From 308c072a8e809b5694225cb7fc29535f62bd6d3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Zurcher?= Date: Fri, 29 Apr 2011 12:39:16 +0200 Subject: regenerate lib/efl/ffi/* --- lib/efl/ffi/ecore.rb | 13 +- lib/efl/ffi/ecore/ecore_evas.rb | 378 ------------------------------------- lib/efl/ffi/ecore/ecore_getopt.rb | 68 ------- lib/efl/ffi/ecore/ecore_input.rb | 78 -------- lib/efl/ffi/ecore_evas.rb | 381 ++++++++++++++++++++++++++++++++++++++ lib/efl/ffi/ecore_getopt.rb | 71 +++++++ lib/efl/ffi/ecore_input.rb | 81 ++++++++ lib/efl/ffi/edje.rb | 13 +- lib/efl/ffi/eet.rb | 13 +- lib/efl/ffi/eina.rb | 13 +- lib/efl/ffi/eina/eina_hash.rb | 108 ----------- lib/efl/ffi/eina/eina_list.rb | 105 ----------- lib/efl/ffi/eina/eina_types.rb | 44 ----- lib/efl/ffi/eina_hash.rb | 111 +++++++++++ lib/efl/ffi/eina_list.rb | 108 +++++++++++ lib/efl/ffi/eina_types.rb | 47 +++++ lib/efl/ffi/elementary.rb | 13 +- lib/efl/ffi/evas.rb | 13 +- 18 files changed, 847 insertions(+), 811 deletions(-) delete mode 100644 lib/efl/ffi/ecore/ecore_evas.rb delete mode 100644 lib/efl/ffi/ecore/ecore_getopt.rb delete mode 100644 lib/efl/ffi/ecore/ecore_input.rb create mode 100644 lib/efl/ffi/ecore_evas.rb create mode 100644 lib/efl/ffi/ecore_getopt.rb create mode 100644 lib/efl/ffi/ecore_input.rb delete mode 100644 lib/efl/ffi/eina/eina_hash.rb delete mode 100644 lib/efl/ffi/eina/eina_list.rb delete mode 100644 lib/efl/ffi/eina/eina_types.rb create mode 100644 lib/efl/ffi/eina_hash.rb create mode 100644 lib/efl/ffi/eina_list.rb create mode 100644 lib/efl/ffi/eina_types.rb diff --git a/lib/efl/ffi/ecore.rb b/lib/efl/ffi/ecore.rb index ddd41b5..2c6b55f 100644 --- a/lib/efl/ffi/ecore.rb +++ b/lib/efl/ffi/ecore.rb @@ -6,13 +6,15 @@ require 'efl/ffi' module Efl # module Ecore + # + extend Efl::FFIHelper + # def self.method_missing m, *args, &block - return Efl::FFI.send 'ecore_'+m.to_s, *args, &block + sym = 'ecore_'+m.to_s + raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym + self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end" + self.send sym, *args, &block end - end - # - module FFI - # # ffi_lib 'ecore' # @@ -384,6 +386,7 @@ module Efl ] # attach_fcts fcts + # end end # diff --git a/lib/efl/ffi/ecore/ecore_evas.rb b/lib/efl/ffi/ecore/ecore_evas.rb deleted file mode 100644 index 7231897..0000000 --- a/lib/efl/ffi/ecore/ecore_evas.rb +++ /dev/null @@ -1,378 +0,0 @@ -#! /usr/bin/env ruby -# -*- coding: UTF-8 -*- -# -require 'efl/ffi' -# -module Efl - # - module EcoreEvas - def self.method_missing m, *args, &block - return Efl::FFI.send 'ecore_evas_'+m.to_s, *args, &block - end - end - # - module FFI - # - # - ffi_lib 'ecore_evas' - # - # ENUMS - # typedef enum _Ecore_Evas_Engine_Type {...} Ecore_Evas_Engine_Type; - enum :ecore_evas_engine_type, [ :ecore_evas_engine_software_buffer, :ecore_evas_engine_software_xlib, :ecore_evas_engine_xrender_x11, - :ecore_evas_engine_opengl_x11, :ecore_evas_engine_software_xcb, :ecore_evas_engine_xrender_xcb, :ecore_evas_engine_software_gdi, - :ecore_evas_engine_software_ddraw, :ecore_evas_engine_direct3d, :ecore_evas_engine_opengl_glew, :ecore_evas_engine_cocoa, - :ecore_evas_engine_software_sdl, :ecore_evas_engine_directfb, :ecore_evas_engine_software_fb, :ecore_evas_engine_software_8_x11, - :ecore_evas_engine_software_16_x11, :ecore_evas_engine_software_16_ddraw, :ecore_evas_engine_software_16_wince, :ecore_evas_engine_opengl_sdl ] - # typedef enum _Ecore_Evas_Avoid_Damage_Type {...} Ecore_Evas_Avoid_Damage_Type; - enum :ecore_evas_avoid_damage_type, [ :ecore_evas_avoid_damage_none, 0, :ecore_evas_avoid_damage_expose, 1, :ecore_evas_avoid_damage_built_in, - 2 ] - # typedef enum _Ecore_Evas_Object_Associate_Flags {...} Ecore_Evas_Object_Associate_Flags; - enum :ecore_evas_object_associate_flags, [ :ecore_evas_object_associate_base, 0, :ecore_evas_object_associate_stack, 1, - :ecore_evas_object_associate_layer, 1, :ecore_evas_object_associate_del, 1 ] - # - # TYPEDEFS - # typedef unsigned int Ecore_X_Window; - typedef :uint, :ecore_x_window - # typedef struct _Ecore_DirectFB_Window Ecore_DirectFB_Window; - typedef :pointer, :ecore_directfb_window - typedef :pointer, :ecore_directfb_window_p - # typedef struct _Ecore_Win32_Window Ecore_Win32_Window; - typedef :pointer, :ecore_win32_window - typedef :pointer, :ecore_win32_window_p - # typedef struct _Ecore_WinCE_Window Ecore_WinCE_Window; - typedef :pointer, :ecore_wince_window - typedef :pointer, :ecore_wince_window_p - # typedef struct _Ecore_Evas Ecore_Evas; - typedef :pointer, :ecore_evas - typedef :pointer, :ecore_evas_p - # - # CALLBACKS - # - # FUNCTIONS - fcts = [ - # EAPI int ecore_evas_engine_type_supported_get(Ecore_Evas_Engine_Type engine); - [ :ecore_evas_engine_type_supported_get, [ :ecore_evas_engine_type ], :int ], - # EAPI int ecore_evas_init(void); - [ :ecore_evas_init, [ ], :int ], - # EAPI int ecore_evas_shutdown(void); - [ :ecore_evas_shutdown, [ ], :int ], - # EAPI void ecore_evas_app_comp_sync_set(Eina_Bool do_sync); - [ :ecore_evas_app_comp_sync_set, [ :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_app_comp_sync_get(void); - [ :ecore_evas_app_comp_sync_get, [ ], :eina_bool ], - # EAPI Eina_List *ecore_evas_engines_get(void); - [ :ecore_evas_engines_get, [ ], :eina_list_p ], - # EAPI void ecore_evas_engines_free(Eina_List *engines); - [ :ecore_evas_engines_free, [ :eina_list_p ], :void ], - # EAPI Ecore_Evas *ecore_evas_new(const char *engine_name, int x, int y, int w, int h, const char *extra_options); - [ :ecore_evas_new, [ :string, :int, :int, :int, :int, :string ], :ecore_evas_p ], - # EAPI Ecore_Evas *ecore_evas_software_x11_new(const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h); - [ :ecore_evas_software_x11_new, [ :string, :uint, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_X_Window ecore_evas_software_x11_window_get(const Ecore_Evas *ee); - [ :ecore_evas_software_x11_window_get, [ :ecore_evas_p ], :uint ], - # EAPI void ecore_evas_software_x11_direct_resize_set(Ecore_Evas *ee, Eina_Bool on); - [ :ecore_evas_software_x11_direct_resize_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_software_x11_direct_resize_get(const Ecore_Evas *ee); - [ :ecore_evas_software_x11_direct_resize_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI void ecore_evas_software_x11_extra_event_window_add(Ecore_Evas *ee, Ecore_X_Window win); - [ :ecore_evas_software_x11_extra_event_window_add, [ :ecore_evas_p, :uint ], :void ], - # EAPI Ecore_Evas *ecore_evas_gl_x11_new(const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h); - [ :ecore_evas_gl_x11_new, [ :string, :uint, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_Evas *ecore_evas_gl_x11_options_new(const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h, const int *opt); - [ :ecore_evas_gl_x11_options_new, [ :string, :uint, :int, :int, :int, :int, :int_p ], :ecore_evas_p ], - # EAPI Ecore_X_Window ecore_evas_gl_x11_window_get(const Ecore_Evas *ee); - [ :ecore_evas_gl_x11_window_get, [ :ecore_evas_p ], :uint ], - # EAPI void ecore_evas_gl_x11_direct_resize_set(Ecore_Evas *ee, Eina_Bool on); - [ :ecore_evas_gl_x11_direct_resize_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_gl_x11_direct_resize_get(const Ecore_Evas *ee); - [ :ecore_evas_gl_x11_direct_resize_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI void ecore_evas_gl_x11_extra_event_window_add(Ecore_Evas *ee, Ecore_X_Window win); - [ :ecore_evas_gl_x11_extra_event_window_add, [ :ecore_evas_p, :uint ], :void ], - # EAPI void ecore_evas_gl_x11_pre_post_swap_callback_set(const Ecore_Evas *ee, void *data, void (*pre_cb) (void *data, Evas *e), void (*post_cb) (void *data, Evas *e)); - # FIXME - # EAPI Ecore_Evas *ecore_evas_xrender_x11_new(const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h); - [ :ecore_evas_xrender_x11_new, [ :string, :uint, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_X_Window ecore_evas_xrender_x11_window_get(const Ecore_Evas *ee); - [ :ecore_evas_xrender_x11_window_get, [ :ecore_evas_p ], :uint ], - # EAPI void ecore_evas_xrender_x11_direct_resize_set(Ecore_Evas *ee, Eina_Bool on); - [ :ecore_evas_xrender_x11_direct_resize_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_xrender_x11_direct_resize_get(const Ecore_Evas *ee); - [ :ecore_evas_xrender_x11_direct_resize_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI void ecore_evas_xrender_x11_extra_event_window_add(Ecore_Evas *ee, Ecore_X_Window win); - [ :ecore_evas_xrender_x11_extra_event_window_add, [ :ecore_evas_p, :uint ], :void ], - # EAPI Ecore_Evas *ecore_evas_software_x11_8_new(const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h); - [ :ecore_evas_software_x11_8_new, [ :string, :uint, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_X_Window ecore_evas_software_x11_8_window_get(const Ecore_Evas *ee); - [ :ecore_evas_software_x11_8_window_get, [ :ecore_evas_p ], :uint ], - # EAPI Ecore_X_Window ecore_evas_software_x11_8_subwindow_get(const Ecore_Evas *ee); - [ :ecore_evas_software_x11_8_subwindow_get, [ :ecore_evas_p ], :uint ], - # EAPI void ecore_evas_software_x11_8_direct_resize_set(Ecore_Evas *ee, Eina_Bool on); - [ :ecore_evas_software_x11_8_direct_resize_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_software_x11_8_direct_resize_get(const Ecore_Evas *ee); - [ :ecore_evas_software_x11_8_direct_resize_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI void ecore_evas_software_x11_8_extra_event_window_add(Ecore_Evas *ee, Ecore_X_Window win); - [ :ecore_evas_software_x11_8_extra_event_window_add, [ :ecore_evas_p, :uint ], :void ], - # EAPI Ecore_Evas *ecore_evas_software_x11_16_new(const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h); - [ :ecore_evas_software_x11_16_new, [ :string, :uint, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_X_Window ecore_evas_software_x11_16_window_get(const Ecore_Evas *ee); - [ :ecore_evas_software_x11_16_window_get, [ :ecore_evas_p ], :uint ], - # EAPI void ecore_evas_software_x11_16_direct_resize_set(Ecore_Evas *ee, Eina_Bool on); - [ :ecore_evas_software_x11_16_direct_resize_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_software_x11_16_direct_resize_get(const Ecore_Evas *ee); - [ :ecore_evas_software_x11_16_direct_resize_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI void ecore_evas_software_x11_16_extra_event_window_add(Ecore_Evas *ee, Ecore_X_Window win); - [ :ecore_evas_software_x11_16_extra_event_window_add, [ :ecore_evas_p, :uint ], :void ], - # EAPI Ecore_Evas *ecore_evas_fb_new(const char *disp_name, int rotation, int w, int h); - [ :ecore_evas_fb_new, [ :string, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_Evas *ecore_evas_directfb_new(const char *disp_name, int windowed, int x, int y, int w, int h); - [ :ecore_evas_directfb_new, [ :string, :int, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_DirectFB_Window *ecore_evas_directfb_window_get(const Ecore_Evas *ee); - [ :ecore_evas_directfb_window_get, [ :ecore_evas_p ], :ecore_directfb_window_p ], - # EAPI Ecore_Evas *ecore_evas_buffer_new(int w, int h); - [ :ecore_evas_buffer_new, [ :int, :int ], :ecore_evas_p ], - # EAPI Ecore_Evas *ecore_evas_buffer_allocfunc_new(int w, int h, void *(*alloc_func) (void *data, int size), void (*free_func) (void *data, void *pix), const void *data); - # FIXME - # EAPI const void *ecore_evas_buffer_pixels_get(Ecore_Evas *ee); - [ :ecore_evas_buffer_pixels_get, [ :ecore_evas_p ], :void_p ], - # EAPI Evas_Object *ecore_evas_object_image_new(Ecore_Evas *ee_target); - [ :ecore_evas_object_image_new, [ :ecore_evas_p ], :evas_object_p ], - # EAPI Ecore_Evas *ecore_evas_object_ecore_evas_get(Evas_Object *obj); - [ :ecore_evas_object_ecore_evas_get, [ :evas_object_p ], :ecore_evas_p ], - # EAPI Evas *ecore_evas_object_evas_get(Evas_Object *obj); - [ :ecore_evas_object_evas_get, [ :evas_object_p ], :evas_p ], - # EAPI Ecore_Evas *ecore_evas_software_gdi_new(Ecore_Win32_Window *parent, int x, int y, int width, int height); - [ :ecore_evas_software_gdi_new, [ :ecore_win32_window_p, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_Evas *ecore_evas_software_ddraw_new(Ecore_Win32_Window *parent, int x, int y, int width, int height); - [ :ecore_evas_software_ddraw_new, [ :ecore_win32_window_p, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_Evas *ecore_evas_software_16_ddraw_new(Ecore_Win32_Window *parent, int x, int y, int width, int height); - [ :ecore_evas_software_16_ddraw_new, [ :ecore_win32_window_p, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_Evas *ecore_evas_direct3d_new(Ecore_Win32_Window *parent, int x, int y, int width, int height); - [ :ecore_evas_direct3d_new, [ :ecore_win32_window_p, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_Evas *ecore_evas_gl_glew_new(Ecore_Win32_Window *parent, int x, int y, int width, int height); - [ :ecore_evas_gl_glew_new, [ :ecore_win32_window_p, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_Win32_Window *ecore_evas_win32_window_get(const Ecore_Evas *ee); - [ :ecore_evas_win32_window_get, [ :ecore_evas_p ], :ecore_win32_window_p ], - # EAPI Ecore_Evas *ecore_evas_sdl_new(const char* name, int w, int h, int fullscreen, int hwsurface, int noframe, int alpha); - [ :ecore_evas_sdl_new, [ :string, :int, :int, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_Evas *ecore_evas_sdl16_new(const char* name, int w, int h, int fullscreen, int hwsurface, int noframe, int alpha); - [ :ecore_evas_sdl16_new, [ :string, :int, :int, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_Evas *ecore_evas_gl_sdl_new(const char* name, int w, int h, int fullscreen, int noframe); - [ :ecore_evas_gl_sdl_new, [ :string, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_Evas *ecore_evas_software_wince_new(Ecore_WinCE_Window *parent, int x, int y, int width, int height); - [ :ecore_evas_software_wince_new, [ :ecore_wince_window_p, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_Evas *ecore_evas_software_wince_fb_new(Ecore_WinCE_Window *parent, int x, int y, int width, int height); - [ :ecore_evas_software_wince_fb_new, [ :ecore_wince_window_p, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_Evas *ecore_evas_software_wince_gapi_new(Ecore_WinCE_Window *parent, int x, int y, int width, int height); - [ :ecore_evas_software_wince_gapi_new, [ :ecore_wince_window_p, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_Evas *ecore_evas_software_wince_ddraw_new(Ecore_WinCE_Window *parent, int x, int y, int width, int height); - [ :ecore_evas_software_wince_ddraw_new, [ :ecore_wince_window_p, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_Evas *ecore_evas_software_wince_gdi_new(Ecore_WinCE_Window *parent, int x, int y, int width, int height); - [ :ecore_evas_software_wince_gdi_new, [ :ecore_wince_window_p, :int, :int, :int, :int ], :ecore_evas_p ], - # EAPI Ecore_WinCE_Window *ecore_evas_software_wince_window_get(const Ecore_Evas *ee); - [ :ecore_evas_software_wince_window_get, [ :ecore_evas_p ], :ecore_wince_window_p ], - # EAPI Ecore_Evas *ecore_evas_cocoa_new(const char* name, int w, int h); - [ :ecore_evas_cocoa_new, [ :string, :int, :int ], :ecore_evas_p ], - # EAPI const char *ecore_evas_engine_name_get(const Ecore_Evas *ee); - [ :ecore_evas_engine_name_get, [ :ecore_evas_p ], :string ], - # EAPI Ecore_Evas *ecore_evas_ecore_evas_get(const Evas *e); - [ :ecore_evas_ecore_evas_get, [ :evas_p ], :ecore_evas_p ], - # EAPI void ecore_evas_free(Ecore_Evas *ee); - [ :ecore_evas_free, [ :ecore_evas_p ], :void ], - # EAPI void *ecore_evas_data_get(const Ecore_Evas *ee, const char *key); - [ :ecore_evas_data_get, [ :ecore_evas_p, :string ], :void_p ], - # EAPI void ecore_evas_data_set(Ecore_Evas *ee, const char *key, const void *data); - [ :ecore_evas_data_set, [ :ecore_evas_p, :string, :void_p ], :void ], - # EAPI void ecore_evas_callback_resize_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); - # FIXME - # EAPI void ecore_evas_callback_move_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); - # FIXME - # EAPI void ecore_evas_callback_show_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); - # FIXME - # EAPI void ecore_evas_callback_hide_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); - # FIXME - # EAPI void ecore_evas_callback_delete_request_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); - # FIXME - # EAPI void ecore_evas_callback_destroy_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); - # FIXME - # EAPI void ecore_evas_callback_focus_in_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); - # FIXME - # EAPI void ecore_evas_callback_focus_out_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); - # FIXME - # EAPI void ecore_evas_callback_sticky_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); - # FIXME - # EAPI void ecore_evas_callback_unsticky_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); - # FIXME - # EAPI void ecore_evas_callback_mouse_in_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); - # FIXME - # EAPI void ecore_evas_callback_mouse_out_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); - # FIXME - # EAPI void ecore_evas_callback_pre_render_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); - # FIXME - # EAPI void ecore_evas_callback_post_render_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); - # FIXME - # EAPI void ecore_evas_callback_pre_free_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); - # FIXME - # EAPI Evas *ecore_evas_get(const Ecore_Evas *ee); - [ :ecore_evas_get, [ :ecore_evas_p ], :evas_p ], - # EAPI void ecore_evas_move(Ecore_Evas *ee, int x, int y); - [ :ecore_evas_move, [ :ecore_evas_p, :int, :int ], :void ], - # EAPI void ecore_evas_managed_move(Ecore_Evas *ee, int x, int y); - [ :ecore_evas_managed_move, [ :ecore_evas_p, :int, :int ], :void ], - # EAPI void ecore_evas_resize(Ecore_Evas *ee, int w, int h); - [ :ecore_evas_resize, [ :ecore_evas_p, :int, :int ], :void ], - # EAPI void ecore_evas_move_resize(Ecore_Evas *ee, int x, int y, int w, int h); - [ :ecore_evas_move_resize, [ :ecore_evas_p, :int, :int, :int, :int ], :void ], - # EAPI void ecore_evas_geometry_get(const Ecore_Evas *ee, int *x, int *y, int *w, int *h); - [ :ecore_evas_geometry_get, [ :ecore_evas_p, :int_p, :int_p, :int_p, :int_p ], :void ], - # EAPI void ecore_evas_rotation_set(Ecore_Evas *ee, int rot); - [ :ecore_evas_rotation_set, [ :ecore_evas_p, :int ], :void ], - # EAPI void ecore_evas_rotation_with_resize_set(Ecore_Evas *ee, int rot); - [ :ecore_evas_rotation_with_resize_set, [ :ecore_evas_p, :int ], :void ], - # EAPI int ecore_evas_rotation_get(const Ecore_Evas *ee); - [ :ecore_evas_rotation_get, [ :ecore_evas_p ], :int ], - # EAPI void ecore_evas_shaped_set(Ecore_Evas *ee, Eina_Bool shaped); - [ :ecore_evas_shaped_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_shaped_get(const Ecore_Evas *ee); - [ :ecore_evas_shaped_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI void ecore_evas_alpha_set(Ecore_Evas *ee, Eina_Bool alpha); - [ :ecore_evas_alpha_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_alpha_get(const Ecore_Evas *ee); - [ :ecore_evas_alpha_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI void ecore_evas_transparent_set(Ecore_Evas *ee, Eina_Bool transparent); - [ :ecore_evas_transparent_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_transparent_get(const Ecore_Evas *ee); - [ :ecore_evas_transparent_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI void ecore_evas_show(Ecore_Evas *ee); - [ :ecore_evas_show, [ :ecore_evas_p ], :void ], - # EAPI void ecore_evas_hide(Ecore_Evas *ee); - [ :ecore_evas_hide, [ :ecore_evas_p ], :void ], - # EAPI int ecore_evas_visibility_get(const Ecore_Evas *ee); - [ :ecore_evas_visibility_get, [ :ecore_evas_p ], :int ], - # EAPI void ecore_evas_raise(Ecore_Evas *ee); - [ :ecore_evas_raise, [ :ecore_evas_p ], :void ], - # EAPI void ecore_evas_lower(Ecore_Evas *ee); - [ :ecore_evas_lower, [ :ecore_evas_p ], :void ], - # EAPI void ecore_evas_activate(Ecore_Evas *ee); - [ :ecore_evas_activate, [ :ecore_evas_p ], :void ], - # EAPI void ecore_evas_title_set(Ecore_Evas *ee, const char *t); - [ :ecore_evas_title_set, [ :ecore_evas_p, :string ], :void ], - # EAPI const char *ecore_evas_title_get(const Ecore_Evas *ee); - [ :ecore_evas_title_get, [ :ecore_evas_p ], :string ], - # EAPI void ecore_evas_name_class_set(Ecore_Evas *ee, const char *n, const char *c); - [ :ecore_evas_name_class_set, [ :ecore_evas_p, :string, :string ], :void ], - # EAPI void ecore_evas_name_class_get(const Ecore_Evas *ee, const char **n, const char **c); - [ :ecore_evas_name_class_get, [ :ecore_evas_p, :string_array, :string_array ], :void ], - # EAPI void ecore_evas_size_min_set(Ecore_Evas *ee, int w, int h); - [ :ecore_evas_size_min_set, [ :ecore_evas_p, :int, :int ], :void ], - # EAPI void ecore_evas_size_min_get(const Ecore_Evas *ee, int *w, int *h); - [ :ecore_evas_size_min_get, [ :ecore_evas_p, :int_p, :int_p ], :void ], - # EAPI void ecore_evas_size_max_set(Ecore_Evas *ee, int w, int h); - [ :ecore_evas_size_max_set, [ :ecore_evas_p, :int, :int ], :void ], - # EAPI void ecore_evas_size_max_get(const Ecore_Evas *ee, int *w, int *h); - [ :ecore_evas_size_max_get, [ :ecore_evas_p, :int_p, :int_p ], :void ], - # EAPI void ecore_evas_size_base_set(Ecore_Evas *ee, int w, int h); - [ :ecore_evas_size_base_set, [ :ecore_evas_p, :int, :int ], :void ], - # EAPI void ecore_evas_size_base_get(const Ecore_Evas *ee, int *w, int *h); - [ :ecore_evas_size_base_get, [ :ecore_evas_p, :int_p, :int_p ], :void ], - # EAPI void ecore_evas_size_step_set(Ecore_Evas *ee, int w, int h); - [ :ecore_evas_size_step_set, [ :ecore_evas_p, :int, :int ], :void ], - # EAPI void ecore_evas_size_step_get(const Ecore_Evas *ee, int *w, int *h); - [ :ecore_evas_size_step_get, [ :ecore_evas_p, :int_p, :int_p ], :void ], - # EAPI void ecore_evas_cursor_set(Ecore_Evas *ee, const char *file, int layer, int hot_x, int hot_y); - [ :ecore_evas_cursor_set, [ :ecore_evas_p, :string, :int, :int, :int ], :void ], - # EAPI void ecore_evas_object_cursor_set(Ecore_Evas *ee, Evas_Object *obj, int layer, int hot_x, int hot_y); - [ :ecore_evas_object_cursor_set, [ :ecore_evas_p, :evas_object_p, :int, :int, :int ], :void ], - # EAPI void ecore_evas_cursor_get(const Ecore_Evas *ee, Evas_Object **obj, int *layer, int *hot_x, int *hot_y); - [ :ecore_evas_cursor_get, [ :ecore_evas_p, :evas_object_pp, :int_p, :int_p, :int_p ], :void ], - # EAPI void ecore_evas_layer_set(Ecore_Evas *ee, int layer); - [ :ecore_evas_layer_set, [ :ecore_evas_p, :int ], :void ], - # EAPI int ecore_evas_layer_get(const Ecore_Evas *ee); - [ :ecore_evas_layer_get, [ :ecore_evas_p ], :int ], - # EAPI void ecore_evas_focus_set(Ecore_Evas *ee, Eina_Bool on); - [ :ecore_evas_focus_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_focus_get(const Ecore_Evas *ee); - [ :ecore_evas_focus_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI void ecore_evas_iconified_set(Ecore_Evas *ee, Eina_Bool on); - [ :ecore_evas_iconified_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_iconified_get(const Ecore_Evas *ee); - [ :ecore_evas_iconified_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI void ecore_evas_borderless_set(Ecore_Evas *ee, Eina_Bool on); - [ :ecore_evas_borderless_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_borderless_get(const Ecore_Evas *ee); - [ :ecore_evas_borderless_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI void ecore_evas_override_set(Ecore_Evas *ee, Eina_Bool on); - [ :ecore_evas_override_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_override_get(const Ecore_Evas *ee); - [ :ecore_evas_override_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI void ecore_evas_maximized_set(Ecore_Evas *ee, Eina_Bool on); - [ :ecore_evas_maximized_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_maximized_get(const Ecore_Evas *ee); - [ :ecore_evas_maximized_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI void ecore_evas_fullscreen_set(Ecore_Evas *ee, Eina_Bool on); - [ :ecore_evas_fullscreen_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_fullscreen_get(const Ecore_Evas *ee); - [ :ecore_evas_fullscreen_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI void ecore_evas_avoid_damage_set(Ecore_Evas *ee, Ecore_Evas_Avoid_Damage_Type on); - [ :ecore_evas_avoid_damage_set, [ :ecore_evas_p, :ecore_evas_avoid_damage_type ], :void ], - # EAPI Ecore_Evas_Avoid_Damage_Type ecore_evas_avoid_damage_get(const Ecore_Evas *ee); - [ :ecore_evas_avoid_damage_get, [ :ecore_evas_p ], :ecore_evas_avoid_damage_type ], - # EAPI void ecore_evas_withdrawn_set(Ecore_Evas *ee, Eina_Bool withdrawn); - [ :ecore_evas_withdrawn_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_withdrawn_get(const Ecore_Evas *ee); - [ :ecore_evas_withdrawn_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI void ecore_evas_sticky_set(Ecore_Evas *ee, Eina_Bool sticky); - [ :ecore_evas_sticky_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_sticky_get(const Ecore_Evas *ee); - [ :ecore_evas_sticky_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI void ecore_evas_ignore_events_set(Ecore_Evas *ee, Eina_Bool ignore); - [ :ecore_evas_ignore_events_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_ignore_events_get(const Ecore_Evas *ee); - [ :ecore_evas_ignore_events_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI void ecore_evas_manual_render_set(Ecore_Evas *ee, Eina_Bool manual_render); - [ :ecore_evas_manual_render_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_manual_render_get(const Ecore_Evas *ee); - [ :ecore_evas_manual_render_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI void ecore_evas_manual_render(Ecore_Evas *ee); - [ :ecore_evas_manual_render, [ :ecore_evas_p ], :void ], - # EAPI void ecore_evas_comp_sync_set(Ecore_Evas *ee, Eina_Bool do_sync); - [ :ecore_evas_comp_sync_set, [ :ecore_evas_p, :eina_bool ], :void ], - # EAPI Eina_Bool ecore_evas_comp_sync_get(const Ecore_Evas *ee); - [ :ecore_evas_comp_sync_get, [ :ecore_evas_p ], :eina_bool ], - # EAPI Ecore_Window ecore_evas_window_get(const Ecore_Evas *ee); - [ :ecore_evas_window_get, [ :ecore_evas_p ], :uintptr_t ], - # EAPI Eina_Bool ecore_evas_object_associate(Ecore_Evas *ee, Evas_Object *obj, Ecore_Evas_Object_Associate_Flags flags); - [ :ecore_evas_object_associate, [ :ecore_evas_p, :evas_object_p, :ecore_evas_object_associate_flags ], :eina_bool ], - # EAPI Eina_Bool ecore_evas_object_dissociate(Ecore_Evas *ee, Evas_Object *obj); - [ :ecore_evas_object_dissociate, [ :ecore_evas_p, :evas_object_p ], :eina_bool ], - # EAPI Evas_Object *ecore_evas_object_associate_get(const Ecore_Evas *ee); - [ :ecore_evas_object_associate_get, [ :ecore_evas_p ], :evas_object_p ], - # EAPI unsigned char ecore_getopt_callback_ecore_evas_list_engines(const Ecore_Getopt *parser, const Ecore_Getopt_Desc *desc, const char *str, void *data, Ecore_Getopt_Value *storage); - [ :ecore_getopt_callback_ecore_evas_list_engines, [ :ecore_getopt_p, :ecore_getopt_desc_p, :string, :void_p, :ecore_getopt_value_p ], :uchar - ], - # EAPI Eina_List *ecore_evas_ecore_evas_list_get(void); - [ :ecore_evas_ecore_evas_list_get, [ ], :eina_list_p ], - # EAPI void ecore_evas_x11_leader_set(Ecore_Evas *ee, Ecore_X_Window win); - [ :ecore_evas_x11_leader_set, [ :ecore_evas_p, :uint ], :void ], - # EAPI Ecore_X_Window ecore_evas_x11_leader_get(Ecore_Evas *ee); - [ :ecore_evas_x11_leader_get, [ :ecore_evas_p ], :uint ], - # EAPI void ecore_evas_x11_leader_default_set(Ecore_Evas *ee); - [ :ecore_evas_x11_leader_default_set, [ :ecore_evas_p ], :void ], - # EAPI void ecore_evas_x11_shape_input_rectangle_set(Ecore_Evas *ee, int x, int y, int w, int h); - [ :ecore_evas_x11_shape_input_rectangle_set, [ :ecore_evas_p, :int, :int, :int, :int ], :void ], - # EAPI void ecore_evas_x11_shape_input_rectangle_add(Ecore_Evas *ee, int x, int y, int w, int h); - [ :ecore_evas_x11_shape_input_rectangle_add, [ :ecore_evas_p, :int, :int, :int, :int ], :void ], - # EAPI void ecore_evas_x11_shape_input_rectangle_subtract(Ecore_Evas *ee, int x, int y, int w, int h); - [ :ecore_evas_x11_shape_input_rectangle_subtract, [ :ecore_evas_p, :int, :int, :int, :int ], :void ], - # EAPI void ecore_evas_x11_shape_input_empty(Ecore_Evas *ee); - [ :ecore_evas_x11_shape_input_empty, [ :ecore_evas_p ], :void ], - # EAPI void ecore_evas_x11_shape_input_reset(Ecore_Evas *ee); - [ :ecore_evas_x11_shape_input_reset, [ :ecore_evas_p ], :void ], - # EAPI void ecore_evas_x11_shape_input_apply(Ecore_Evas *ee); - [ :ecore_evas_x11_shape_input_apply, [ :ecore_evas_p ], :void ], - ] - # - attach_fcts fcts - end -end -# -# EOF diff --git a/lib/efl/ffi/ecore/ecore_getopt.rb b/lib/efl/ffi/ecore/ecore_getopt.rb deleted file mode 100644 index 40cd81d..0000000 --- a/lib/efl/ffi/ecore/ecore_getopt.rb +++ /dev/null @@ -1,68 +0,0 @@ -#! /usr/bin/env ruby -# -*- coding: UTF-8 -*- -# -require 'efl/ffi' -# -module Efl - # - module EcoreGetopt - def self.method_missing m, *args, &block - return Efl::FFI.send 'ecore_getopt_'+m.to_s, *args, &block - end - end - # - module FFI - # - # - ffi_lib 'ecore' - # - # ENUMS - # typedef enum {...} Ecore_Getopt_Action; - enum :ecore_getopt_action, [ :ecore_getopt_action_store, :ecore_getopt_action_store_const, :ecore_getopt_action_store_true, - :ecore_getopt_action_store_false, :ecore_getopt_action_choice, :ecore_getopt_action_append, :ecore_getopt_action_count, :ecore_getopt_action_callback, - :ecore_getopt_action_help, :ecore_getopt_action_version, :ecore_getopt_action_copyright, :ecore_getopt_action_license ] - # typedef enum {...} Ecore_Getopt_Type; - enum :ecore_getopt_type, [ :ecore_getopt_type_str, :ecore_getopt_type_bool, :ecore_getopt_type_short, :ecore_getopt_type_int, - :ecore_getopt_type_long, :ecore_getopt_type_ushort, :ecore_getopt_type_uint, :ecore_getopt_type_ulong, :ecore_getopt_type_double ] - # typedef enum {...} Ecore_Getopt_Desc_Arg_Requirement; - enum :ecore_getopt_desc_arg_requirement, [ :ecore_getopt_desc_arg_requirement_no, 0, :ecore_getopt_desc_arg_requirement_yes, 1, - :ecore_getopt_desc_arg_requirement_optional, 3 ] - # - # TYPEDEFS - # typedef union _Ecore_Getopt_Value Ecore_Getopt_Value; - typedef :pointer, :ecore_getopt_value - typedef :pointer, :ecore_getopt_value_p - # typedef struct _Ecore_Getopt_Desc_Store Ecore_Getopt_Desc_Store; - typedef :pointer, :ecore_getopt_desc_store - # typedef struct _Ecore_Getopt_Desc_Callback Ecore_Getopt_Desc_Callback; - typedef :pointer, :ecore_getopt_desc_callback - # typedef struct _Ecore_Getopt_Desc Ecore_Getopt_Desc; - typedef :pointer, :ecore_getopt_desc - typedef :pointer, :ecore_getopt_desc_p - # typedef struct _Ecore_Getopt Ecore_Getopt; - typedef :pointer, :ecore_getopt - typedef :pointer, :ecore_getopt_p - # - # CALLBACKS - # - # FUNCTIONS - fcts = [ - # EAPI void ecore_getopt_help(FILE *fp, const Ecore_Getopt *info); - [ :ecore_getopt_help, [ :pointer, :ecore_getopt_p ], :void ], - # EAPI Eina_Bool ecore_getopt_parser_has_duplicates(const Ecore_Getopt *parser); - [ :ecore_getopt_parser_has_duplicates, [ :ecore_getopt_p ], :eina_bool ], - # EAPI int ecore_getopt_parse(const Ecore_Getopt *parser, Ecore_Getopt_Value *values, int argc, char **argv); - [ :ecore_getopt_parse, [ :ecore_getopt_p, :ecore_getopt_value_p, :int, :string_array ], :int ], - # EAPI Eina_List *ecore_getopt_list_free(Eina_List *list); - [ :ecore_getopt_list_free, [ :eina_list_p ], :eina_list_p ], - # EAPI Eina_Bool ecore_getopt_callback_geometry_parse(const Ecore_Getopt *parser, const Ecore_Getopt_Desc *desc, const char *str, void *data, Ecore_Getopt_Value *storage); - [ :ecore_getopt_callback_geometry_parse, [ :ecore_getopt_p, :ecore_getopt_desc_p, :string, :void_p, :ecore_getopt_value_p ], :eina_bool ], - # EAPI Eina_Bool ecore_getopt_callback_size_parse(const Ecore_Getopt *parser, const Ecore_Getopt_Desc *desc, const char *str, void *data, Ecore_Getopt_Value *storage); - [ :ecore_getopt_callback_size_parse, [ :ecore_getopt_p, :ecore_getopt_desc_p, :string, :void_p, :ecore_getopt_value_p ], :eina_bool ], - ] - # - attach_fcts fcts - end -end -# -# EOF diff --git a/lib/efl/ffi/ecore/ecore_input.rb b/lib/efl/ffi/ecore/ecore_input.rb deleted file mode 100644 index 9583639..0000000 --- a/lib/efl/ffi/ecore/ecore_input.rb +++ /dev/null @@ -1,78 +0,0 @@ -#! /usr/bin/env ruby -# -*- coding: UTF-8 -*- -# -require 'efl/ffi' -# -module Efl - # - module EcoreInput - def self.method_missing m, *args, &block - return Efl::FFI.send 'ecore_event_'+m.to_s, *args, &block - end - end - # - module FFI - # - # - ffi_lib 'ecore_input' - # - # ENUMS - # typedef enum _Ecore_Event_Modifier {...} Ecore_Event_Modifier; - enum :ecore_event_modifier, [ :ecore_none, :ecore_shift, :ecore_ctrl, :ecore_alt, :ecore_win, :ecore_scroll, :ecore_caps, :ecore_last ] - # typedef enum _Ecore_Event_Press {...} Ecore_Event_Press; - enum :ecore_event_press, [ :ecore_down, :ecore_up ] - # typedef enum _Ecore_Event_IO {...} Ecore_Event_IO; - enum :ecore_event_io, [ :ecore_in, :ecore_out ] - # - # TYPEDEFS - # typedef uintptr_t Ecore_Window; - typedef :uintptr_t, :ecore_window - # typedef struct _Ecore_Event_Key Ecore_Event_Key; - typedef :pointer, :ecore_event_key - # typedef struct _Ecore_Event_Mouse_Button Ecore_Event_Mouse_Button; - typedef :pointer, :ecore_event_mouse_button - # typedef struct _Ecore_Event_Mouse_Wheel Ecore_Event_Mouse_Wheel; - typedef :pointer, :ecore_event_mouse_wheel - # typedef struct _Ecore_Event_Mouse_Move Ecore_Event_Mouse_Move; - typedef :pointer, :ecore_event_mouse_move - # typedef struct _Ecore_Event_Mouse_IO Ecore_Event_Mouse_IO; - typedef :pointer, :ecore_event_mouse_io - # typedef struct _Ecore_Event_Modifiers Ecore_Event_Modifiers; - typedef :pointer, :ecore_event_modifiers - typedef :pointer, :ecore_event_modifiers_p - # - # CALLBACKS - # - # FUNCTIONS - fcts = [ - # EAPI extern int ECORE_EVENT_KEY_DOWN; - # FIXME - # EAPI extern int ECORE_EVENT_KEY_UP; - # FIXME - # EAPI extern int ECORE_EVENT_MOUSE_BUTTON_DOWN; - # FIXME - # EAPI extern int ECORE_EVENT_MOUSE_BUTTON_UP; - # FIXME - # EAPI extern int ECORE_EVENT_MOUSE_MOVE; - # FIXME - # EAPI extern int ECORE_EVENT_MOUSE_WHEEL; - # FIXME - # EAPI extern int ECORE_EVENT_MOUSE_IN; - # FIXME - # EAPI extern int ECORE_EVENT_MOUSE_OUT; - # FIXME - # EAPI int ecore_event_init(void); - [ :ecore_event_init, [ ], :int ], - # EAPI int ecore_event_shutdown(void); - [ :ecore_event_shutdown, [ ], :int ], - # EAPI unsigned int ecore_event_modifier_mask(Ecore_Event_Modifier modifier); - [ :ecore_event_modifier_mask, [ :ecore_event_modifier ], :uint ], - # EAPI Ecore_Event_Modifier ecore_event_update_modifier(const char *key, Ecore_Event_Modifiers *modifiers, int inc); - [ :ecore_event_update_modifier, [ :string, :ecore_event_modifiers_p, :int ], :ecore_event_modifier ], - ] - # - attach_fcts fcts - end -end -# -# EOF diff --git a/lib/efl/ffi/ecore_evas.rb b/lib/efl/ffi/ecore_evas.rb new file mode 100644 index 0000000..8ed575f --- /dev/null +++ b/lib/efl/ffi/ecore_evas.rb @@ -0,0 +1,381 @@ +#! /usr/bin/env ruby +# -*- coding: UTF-8 -*- +# +require 'efl/ffi' +# +module Efl + # + module EcoreEvas + # + extend Efl::FFIHelper + # + def self.method_missing m, *args, &block + sym = 'ecore_evas_'+m.to_s + raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym + self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end" + self.send sym, *args, &block + end + # + ffi_lib 'ecore_evas' + # + # ENUMS + # typedef enum _Ecore_Evas_Engine_Type {...} Ecore_Evas_Engine_Type; + enum :ecore_evas_engine_type, [ :ecore_evas_engine_software_buffer, :ecore_evas_engine_software_xlib, :ecore_evas_engine_xrender_x11, + :ecore_evas_engine_opengl_x11, :ecore_evas_engine_software_xcb, :ecore_evas_engine_xrender_xcb, :ecore_evas_engine_software_gdi, + :ecore_evas_engine_software_ddraw, :ecore_evas_engine_direct3d, :ecore_evas_engine_opengl_glew, :ecore_evas_engine_cocoa, + :ecore_evas_engine_software_sdl, :ecore_evas_engine_directfb, :ecore_evas_engine_software_fb, :ecore_evas_engine_software_8_x11, + :ecore_evas_engine_software_16_x11, :ecore_evas_engine_software_16_ddraw, :ecore_evas_engine_software_16_wince, :ecore_evas_engine_opengl_sdl ] + # typedef enum _Ecore_Evas_Avoid_Damage_Type {...} Ecore_Evas_Avoid_Damage_Type; + enum :ecore_evas_avoid_damage_type, [ :ecore_evas_avoid_damage_none, 0, :ecore_evas_avoid_damage_expose, 1, :ecore_evas_avoid_damage_built_in, + 2 ] + # typedef enum _Ecore_Evas_Object_Associate_Flags {...} Ecore_Evas_Object_Associate_Flags; + enum :ecore_evas_object_associate_flags, [ :ecore_evas_object_associate_base, 0, :ecore_evas_object_associate_stack, 1, + :ecore_evas_object_associate_layer, 1, :ecore_evas_object_associate_del, 1 ] + # + # TYPEDEFS + # typedef unsigned int Ecore_X_Window; + typedef :uint, :ecore_x_window + # typedef struct _Ecore_DirectFB_Window Ecore_DirectFB_Window; + typedef :pointer, :ecore_directfb_window + typedef :pointer, :ecore_directfb_window_p + # typedef struct _Ecore_Win32_Window Ecore_Win32_Window; + typedef :pointer, :ecore_win32_window + typedef :pointer, :ecore_win32_window_p + # typedef struct _Ecore_WinCE_Window Ecore_WinCE_Window; + typedef :pointer, :ecore_wince_window + typedef :pointer, :ecore_wince_window_p + # typedef struct _Ecore_Evas Ecore_Evas; + typedef :pointer, :ecore_evas + typedef :pointer, :ecore_evas_p + # + # CALLBACKS + # + # FUNCTIONS + fcts = [ + # EAPI int ecore_evas_engine_type_supported_get(Ecore_Evas_Engine_Type engine); + [ :ecore_evas_engine_type_supported_get, [ :ecore_evas_engine_type ], :int ], + # EAPI int ecore_evas_init(void); + [ :ecore_evas_init, [ ], :int ], + # EAPI int ecore_evas_shutdown(void); + [ :ecore_evas_shutdown, [ ], :int ], + # EAPI void ecore_evas_app_comp_sync_set(Eina_Bool do_sync); + [ :ecore_evas_app_comp_sync_set, [ :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_app_comp_sync_get(void); + [ :ecore_evas_app_comp_sync_get, [ ], :eina_bool ], + # EAPI Eina_List *ecore_evas_engines_get(void); + [ :ecore_evas_engines_get, [ ], :eina_list_p ], + # EAPI void ecore_evas_engines_free(Eina_List *engines); + [ :ecore_evas_engines_free, [ :eina_list_p ], :void ], + # EAPI Ecore_Evas *ecore_evas_new(const char *engine_name, int x, int y, int w, int h, const char *extra_options); + [ :ecore_evas_new, [ :string, :int, :int, :int, :int, :string ], :ecore_evas_p ], + # EAPI Ecore_Evas *ecore_evas_software_x11_new(const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h); + [ :ecore_evas_software_x11_new, [ :string, :uint, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_X_Window ecore_evas_software_x11_window_get(const Ecore_Evas *ee); + [ :ecore_evas_software_x11_window_get, [ :ecore_evas_p ], :uint ], + # EAPI void ecore_evas_software_x11_direct_resize_set(Ecore_Evas *ee, Eina_Bool on); + [ :ecore_evas_software_x11_direct_resize_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_software_x11_direct_resize_get(const Ecore_Evas *ee); + [ :ecore_evas_software_x11_direct_resize_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI void ecore_evas_software_x11_extra_event_window_add(Ecore_Evas *ee, Ecore_X_Window win); + [ :ecore_evas_software_x11_extra_event_window_add, [ :ecore_evas_p, :uint ], :void ], + # EAPI Ecore_Evas *ecore_evas_gl_x11_new(const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h); + [ :ecore_evas_gl_x11_new, [ :string, :uint, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_Evas *ecore_evas_gl_x11_options_new(const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h, const int *opt); + [ :ecore_evas_gl_x11_options_new, [ :string, :uint, :int, :int, :int, :int, :int_p ], :ecore_evas_p ], + # EAPI Ecore_X_Window ecore_evas_gl_x11_window_get(const Ecore_Evas *ee); + [ :ecore_evas_gl_x11_window_get, [ :ecore_evas_p ], :uint ], + # EAPI void ecore_evas_gl_x11_direct_resize_set(Ecore_Evas *ee, Eina_Bool on); + [ :ecore_evas_gl_x11_direct_resize_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_gl_x11_direct_resize_get(const Ecore_Evas *ee); + [ :ecore_evas_gl_x11_direct_resize_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI void ecore_evas_gl_x11_extra_event_window_add(Ecore_Evas *ee, Ecore_X_Window win); + [ :ecore_evas_gl_x11_extra_event_window_add, [ :ecore_evas_p, :uint ], :void ], + # EAPI void ecore_evas_gl_x11_pre_post_swap_callback_set(const Ecore_Evas *ee, void *data, void (*pre_cb) (void *data, Evas *e), void (*post_cb) (void *data, Evas *e)); + # FIXME + # EAPI Ecore_Evas *ecore_evas_xrender_x11_new(const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h); + [ :ecore_evas_xrender_x11_new, [ :string, :uint, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_X_Window ecore_evas_xrender_x11_window_get(const Ecore_Evas *ee); + [ :ecore_evas_xrender_x11_window_get, [ :ecore_evas_p ], :uint ], + # EAPI void ecore_evas_xrender_x11_direct_resize_set(Ecore_Evas *ee, Eina_Bool on); + [ :ecore_evas_xrender_x11_direct_resize_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_xrender_x11_direct_resize_get(const Ecore_Evas *ee); + [ :ecore_evas_xrender_x11_direct_resize_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI void ecore_evas_xrender_x11_extra_event_window_add(Ecore_Evas *ee, Ecore_X_Window win); + [ :ecore_evas_xrender_x11_extra_event_window_add, [ :ecore_evas_p, :uint ], :void ], + # EAPI Ecore_Evas *ecore_evas_software_x11_8_new(const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h); + [ :ecore_evas_software_x11_8_new, [ :string, :uint, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_X_Window ecore_evas_software_x11_8_window_get(const Ecore_Evas *ee); + [ :ecore_evas_software_x11_8_window_get, [ :ecore_evas_p ], :uint ], + # EAPI Ecore_X_Window ecore_evas_software_x11_8_subwindow_get(const Ecore_Evas *ee); + [ :ecore_evas_software_x11_8_subwindow_get, [ :ecore_evas_p ], :uint ], + # EAPI void ecore_evas_software_x11_8_direct_resize_set(Ecore_Evas *ee, Eina_Bool on); + [ :ecore_evas_software_x11_8_direct_resize_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_software_x11_8_direct_resize_get(const Ecore_Evas *ee); + [ :ecore_evas_software_x11_8_direct_resize_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI void ecore_evas_software_x11_8_extra_event_window_add(Ecore_Evas *ee, Ecore_X_Window win); + [ :ecore_evas_software_x11_8_extra_event_window_add, [ :ecore_evas_p, :uint ], :void ], + # EAPI Ecore_Evas *ecore_evas_software_x11_16_new(const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h); + [ :ecore_evas_software_x11_16_new, [ :string, :uint, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_X_Window ecore_evas_software_x11_16_window_get(const Ecore_Evas *ee); + [ :ecore_evas_software_x11_16_window_get, [ :ecore_evas_p ], :uint ], + # EAPI void ecore_evas_software_x11_16_direct_resize_set(Ecore_Evas *ee, Eina_Bool on); + [ :ecore_evas_software_x11_16_direct_resize_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_software_x11_16_direct_resize_get(const Ecore_Evas *ee); + [ :ecore_evas_software_x11_16_direct_resize_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI void ecore_evas_software_x11_16_extra_event_window_add(Ecore_Evas *ee, Ecore_X_Window win); + [ :ecore_evas_software_x11_16_extra_event_window_add, [ :ecore_evas_p, :uint ], :void ], + # EAPI Ecore_Evas *ecore_evas_fb_new(const char *disp_name, int rotation, int w, int h); + [ :ecore_evas_fb_new, [ :string, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_Evas *ecore_evas_directfb_new(const char *disp_name, int windowed, int x, int y, int w, int h); + [ :ecore_evas_directfb_new, [ :string, :int, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_DirectFB_Window *ecore_evas_directfb_window_get(const Ecore_Evas *ee); + [ :ecore_evas_directfb_window_get, [ :ecore_evas_p ], :ecore_directfb_window_p ], + # EAPI Ecore_Evas *ecore_evas_buffer_new(int w, int h); + [ :ecore_evas_buffer_new, [ :int, :int ], :ecore_evas_p ], + # EAPI Ecore_Evas *ecore_evas_buffer_allocfunc_new(int w, int h, void *(*alloc_func) (void *data, int size), void (*free_func) (void *data, void *pix), const void *data); + # FIXME + # EAPI const void *ecore_evas_buffer_pixels_get(Ecore_Evas *ee); + [ :ecore_evas_buffer_pixels_get, [ :ecore_evas_p ], :void_p ], + # EAPI Evas_Object *ecore_evas_object_image_new(Ecore_Evas *ee_target); + [ :ecore_evas_object_image_new, [ :ecore_evas_p ], :evas_object_p ], + # EAPI Ecore_Evas *ecore_evas_object_ecore_evas_get(Evas_Object *obj); + [ :ecore_evas_object_ecore_evas_get, [ :evas_object_p ], :ecore_evas_p ], + # EAPI Evas *ecore_evas_object_evas_get(Evas_Object *obj); + [ :ecore_evas_object_evas_get, [ :evas_object_p ], :evas_p ], + # EAPI Ecore_Evas *ecore_evas_software_gdi_new(Ecore_Win32_Window *parent, int x, int y, int width, int height); + [ :ecore_evas_software_gdi_new, [ :ecore_win32_window_p, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_Evas *ecore_evas_software_ddraw_new(Ecore_Win32_Window *parent, int x, int y, int width, int height); + [ :ecore_evas_software_ddraw_new, [ :ecore_win32_window_p, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_Evas *ecore_evas_software_16_ddraw_new(Ecore_Win32_Window *parent, int x, int y, int width, int height); + [ :ecore_evas_software_16_ddraw_new, [ :ecore_win32_window_p, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_Evas *ecore_evas_direct3d_new(Ecore_Win32_Window *parent, int x, int y, int width, int height); + [ :ecore_evas_direct3d_new, [ :ecore_win32_window_p, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_Evas *ecore_evas_gl_glew_new(Ecore_Win32_Window *parent, int x, int y, int width, int height); + [ :ecore_evas_gl_glew_new, [ :ecore_win32_window_p, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_Win32_Window *ecore_evas_win32_window_get(const Ecore_Evas *ee); + [ :ecore_evas_win32_window_get, [ :ecore_evas_p ], :ecore_win32_window_p ], + # EAPI Ecore_Evas *ecore_evas_sdl_new(const char* name, int w, int h, int fullscreen, int hwsurface, int noframe, int alpha); + [ :ecore_evas_sdl_new, [ :string, :int, :int, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_Evas *ecore_evas_sdl16_new(const char* name, int w, int h, int fullscreen, int hwsurface, int noframe, int alpha); + [ :ecore_evas_sdl16_new, [ :string, :int, :int, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_Evas *ecore_evas_gl_sdl_new(const char* name, int w, int h, int fullscreen, int noframe); + [ :ecore_evas_gl_sdl_new, [ :string, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_Evas *ecore_evas_software_wince_new(Ecore_WinCE_Window *parent, int x, int y, int width, int height); + [ :ecore_evas_software_wince_new, [ :ecore_wince_window_p, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_Evas *ecore_evas_software_wince_fb_new(Ecore_WinCE_Window *parent, int x, int y, int width, int height); + [ :ecore_evas_software_wince_fb_new, [ :ecore_wince_window_p, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_Evas *ecore_evas_software_wince_gapi_new(Ecore_WinCE_Window *parent, int x, int y, int width, int height); + [ :ecore_evas_software_wince_gapi_new, [ :ecore_wince_window_p, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_Evas *ecore_evas_software_wince_ddraw_new(Ecore_WinCE_Window *parent, int x, int y, int width, int height); + [ :ecore_evas_software_wince_ddraw_new, [ :ecore_wince_window_p, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_Evas *ecore_evas_software_wince_gdi_new(Ecore_WinCE_Window *parent, int x, int y, int width, int height); + [ :ecore_evas_software_wince_gdi_new, [ :ecore_wince_window_p, :int, :int, :int, :int ], :ecore_evas_p ], + # EAPI Ecore_WinCE_Window *ecore_evas_software_wince_window_get(const Ecore_Evas *ee); + [ :ecore_evas_software_wince_window_get, [ :ecore_evas_p ], :ecore_wince_window_p ], + # EAPI Ecore_Evas *ecore_evas_cocoa_new(const char* name, int w, int h); + [ :ecore_evas_cocoa_new, [ :string, :int, :int ], :ecore_evas_p ], + # EAPI const char *ecore_evas_engine_name_get(const Ecore_Evas *ee); + [ :ecore_evas_engine_name_get, [ :ecore_evas_p ], :string ], + # EAPI Ecore_Evas *ecore_evas_ecore_evas_get(const Evas *e); + [ :ecore_evas_ecore_evas_get, [ :evas_p ], :ecore_evas_p ], + # EAPI void ecore_evas_free(Ecore_Evas *ee); + [ :ecore_evas_free, [ :ecore_evas_p ], :void ], + # EAPI void *ecore_evas_data_get(const Ecore_Evas *ee, const char *key); + [ :ecore_evas_data_get, [ :ecore_evas_p, :string ], :void_p ], + # EAPI void ecore_evas_data_set(Ecore_Evas *ee, const char *key, const void *data); + [ :ecore_evas_data_set, [ :ecore_evas_p, :string, :void_p ], :void ], + # EAPI void ecore_evas_callback_resize_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); + # FIXME + # EAPI void ecore_evas_callback_move_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); + # FIXME + # EAPI void ecore_evas_callback_show_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); + # FIXME + # EAPI void ecore_evas_callback_hide_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); + # FIXME + # EAPI void ecore_evas_callback_delete_request_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); + # FIXME + # EAPI void ecore_evas_callback_destroy_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); + # FIXME + # EAPI void ecore_evas_callback_focus_in_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); + # FIXME + # EAPI void ecore_evas_callback_focus_out_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); + # FIXME + # EAPI void ecore_evas_callback_sticky_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); + # FIXME + # EAPI void ecore_evas_callback_unsticky_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); + # FIXME + # EAPI void ecore_evas_callback_mouse_in_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); + # FIXME + # EAPI void ecore_evas_callback_mouse_out_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); + # FIXME + # EAPI void ecore_evas_callback_pre_render_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); + # FIXME + # EAPI void ecore_evas_callback_post_render_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); + # FIXME + # EAPI void ecore_evas_callback_pre_free_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); + # FIXME + # EAPI Evas *ecore_evas_get(const Ecore_Evas *ee); + [ :ecore_evas_get, [ :ecore_evas_p ], :evas_p ], + # EAPI void ecore_evas_move(Ecore_Evas *ee, int x, int y); + [ :ecore_evas_move, [ :ecore_evas_p, :int, :int ], :void ], + # EAPI void ecore_evas_managed_move(Ecore_Evas *ee, int x, int y); + [ :ecore_evas_managed_move, [ :ecore_evas_p, :int, :int ], :void ], + # EAPI void ecore_evas_resize(Ecore_Evas *ee, int w, int h); + [ :ecore_evas_resize, [ :ecore_evas_p, :int, :int ], :void ], + # EAPI void ecore_evas_move_resize(Ecore_Evas *ee, int x, int y, int w, int h); + [ :ecore_evas_move_resize, [ :ecore_evas_p, :int, :int, :int, :int ], :void ], + # EAPI void ecore_evas_geometry_get(const Ecore_Evas *ee, int *x, int *y, int *w, int *h); + [ :ecore_evas_geometry_get, [ :ecore_evas_p, :int_p, :int_p, :int_p, :int_p ], :void ], + # EAPI void ecore_evas_rotation_set(Ecore_Evas *ee, int rot); + [ :ecore_evas_rotation_set, [ :ecore_evas_p, :int ], :void ], + # EAPI void ecore_evas_rotation_with_resize_set(Ecore_Evas *ee, int rot); + [ :ecore_evas_rotation_with_resize_set, [ :ecore_evas_p, :int ], :void ], + # EAPI int ecore_evas_rotation_get(const Ecore_Evas *ee); + [ :ecore_evas_rotation_get, [ :ecore_evas_p ], :int ], + # EAPI void ecore_evas_shaped_set(Ecore_Evas *ee, Eina_Bool shaped); + [ :ecore_evas_shaped_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_shaped_get(const Ecore_Evas *ee); + [ :ecore_evas_shaped_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI void ecore_evas_alpha_set(Ecore_Evas *ee, Eina_Bool alpha); + [ :ecore_evas_alpha_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_alpha_get(const Ecore_Evas *ee); + [ :ecore_evas_alpha_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI void ecore_evas_transparent_set(Ecore_Evas *ee, Eina_Bool transparent); + [ :ecore_evas_transparent_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_transparent_get(const Ecore_Evas *ee); + [ :ecore_evas_transparent_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI void ecore_evas_show(Ecore_Evas *ee); + [ :ecore_evas_show, [ :ecore_evas_p ], :void ], + # EAPI void ecore_evas_hide(Ecore_Evas *ee); + [ :ecore_evas_hide, [ :ecore_evas_p ], :void ], + # EAPI int ecore_evas_visibility_get(const Ecore_Evas *ee); + [ :ecore_evas_visibility_get, [ :ecore_evas_p ], :int ], + # EAPI void ecore_evas_raise(Ecore_Evas *ee); + [ :ecore_evas_raise, [ :ecore_evas_p ], :void ], + # EAPI void ecore_evas_lower(Ecore_Evas *ee); + [ :ecore_evas_lower, [ :ecore_evas_p ], :void ], + # EAPI void ecore_evas_activate(Ecore_Evas *ee); + [ :ecore_evas_activate, [ :ecore_evas_p ], :void ], + # EAPI void ecore_evas_title_set(Ecore_Evas *ee, const char *t); + [ :ecore_evas_title_set, [ :ecore_evas_p, :string ], :void ], + # EAPI const char *ecore_evas_title_get(const Ecore_Evas *ee); + [ :ecore_evas_title_get, [ :ecore_evas_p ], :string ], + # EAPI void ecore_evas_name_class_set(Ecore_Evas *ee, const char *n, const char *c); + [ :ecore_evas_name_class_set, [ :ecore_evas_p, :string, :string ], :void ], + # EAPI void ecore_evas_name_class_get(const Ecore_Evas *ee, const char **n, const char **c); + [ :ecore_evas_name_class_get, [ :ecore_evas_p, :string_array, :string_array ], :void ], + # EAPI void ecore_evas_size_min_set(Ecore_Evas *ee, int w, int h); + [ :ecore_evas_size_min_set, [ :ecore_evas_p, :int, :int ], :void ], + # EAPI void ecore_evas_size_min_get(const Ecore_Evas *ee, int *w, int *h); + [ :ecore_evas_size_min_get, [ :ecore_evas_p, :int_p, :int_p ], :void ], + # EAPI void ecore_evas_size_max_set(Ecore_Evas *ee, int w, int h); + [ :ecore_evas_size_max_set, [ :ecore_evas_p, :int, :int ], :void ], + # EAPI void ecore_evas_size_max_get(const Ecore_Evas *ee, int *w, int *h); + [ :ecore_evas_size_max_get, [ :ecore_evas_p, :int_p, :int_p ], :void ], + # EAPI void ecore_evas_size_base_set(Ecore_Evas *ee, int w, int h); + [ :ecore_evas_size_base_set, [ :ecore_evas_p, :int, :int ], :void ], + # EAPI void ecore_evas_size_base_get(const Ecore_Evas *ee, int *w, int *h); + [ :ecore_evas_size_base_get, [ :ecore_evas_p, :int_p, :int_p ], :void ], + # EAPI void ecore_evas_size_step_set(Ecore_Evas *ee, int w, int h); + [ :ecore_evas_size_step_set, [ :ecore_evas_p, :int, :int ], :void ], + # EAPI void ecore_evas_size_step_get(const Ecore_Evas *ee, int *w, int *h); + [ :ecore_evas_size_step_get, [ :ecore_evas_p, :int_p, :int_p ], :void ], + # EAPI void ecore_evas_cursor_set(Ecore_Evas *ee, const char *file, int layer, int hot_x, int hot_y); + [ :ecore_evas_cursor_set, [ :ecore_evas_p, :string, :int, :int, :int ], :void ], + # EAPI void ecore_evas_object_cursor_set(Ecore_Evas *ee, Evas_Object *obj, int layer, int hot_x, int hot_y); + [ :ecore_evas_object_cursor_set, [ :ecore_evas_p, :evas_object_p, :int, :int, :int ], :void ], + # EAPI void ecore_evas_cursor_get(const Ecore_Evas *ee, Evas_Object **obj, int *layer, int *hot_x, int *hot_y); + [ :ecore_evas_cursor_get, [ :ecore_evas_p, :evas_object_pp, :int_p, :int_p, :int_p ], :void ], + # EAPI void ecore_evas_layer_set(Ecore_Evas *ee, int layer); + [ :ecore_evas_layer_set, [ :ecore_evas_p, :int ], :void ], + # EAPI int ecore_evas_layer_get(const Ecore_Evas *ee); + [ :ecore_evas_layer_get, [ :ecore_evas_p ], :int ], + # EAPI void ecore_evas_focus_set(Ecore_Evas *ee, Eina_Bool on); + [ :ecore_evas_focus_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_focus_get(const Ecore_Evas *ee); + [ :ecore_evas_focus_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI void ecore_evas_iconified_set(Ecore_Evas *ee, Eina_Bool on); + [ :ecore_evas_iconified_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_iconified_get(const Ecore_Evas *ee); + [ :ecore_evas_iconified_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI void ecore_evas_borderless_set(Ecore_Evas *ee, Eina_Bool on); + [ :ecore_evas_borderless_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_borderless_get(const Ecore_Evas *ee); + [ :ecore_evas_borderless_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI void ecore_evas_override_set(Ecore_Evas *ee, Eina_Bool on); + [ :ecore_evas_override_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_override_get(const Ecore_Evas *ee); + [ :ecore_evas_override_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI void ecore_evas_maximized_set(Ecore_Evas *ee, Eina_Bool on); + [ :ecore_evas_maximized_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_maximized_get(const Ecore_Evas *ee); + [ :ecore_evas_maximized_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI void ecore_evas_fullscreen_set(Ecore_Evas *ee, Eina_Bool on); + [ :ecore_evas_fullscreen_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_fullscreen_get(const Ecore_Evas *ee); + [ :ecore_evas_fullscreen_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI void ecore_evas_avoid_damage_set(Ecore_Evas *ee, Ecore_Evas_Avoid_Damage_Type on); + [ :ecore_evas_avoid_damage_set, [ :ecore_evas_p, :ecore_evas_avoid_damage_type ], :void ], + # EAPI Ecore_Evas_Avoid_Damage_Type ecore_evas_avoid_damage_get(const Ecore_Evas *ee); + [ :ecore_evas_avoid_damage_get, [ :ecore_evas_p ], :ecore_evas_avoid_damage_type ], + # EAPI void ecore_evas_withdrawn_set(Ecore_Evas *ee, Eina_Bool withdrawn); + [ :ecore_evas_withdrawn_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_withdrawn_get(const Ecore_Evas *ee); + [ :ecore_evas_withdrawn_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI void ecore_evas_sticky_set(Ecore_Evas *ee, Eina_Bool sticky); + [ :ecore_evas_sticky_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_sticky_get(const Ecore_Evas *ee); + [ :ecore_evas_sticky_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI void ecore_evas_ignore_events_set(Ecore_Evas *ee, Eina_Bool ignore); + [ :ecore_evas_ignore_events_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_ignore_events_get(const Ecore_Evas *ee); + [ :ecore_evas_ignore_events_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI void ecore_evas_manual_render_set(Ecore_Evas *ee, Eina_Bool manual_render); + [ :ecore_evas_manual_render_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_manual_render_get(const Ecore_Evas *ee); + [ :ecore_evas_manual_render_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI void ecore_evas_manual_render(Ecore_Evas *ee); + [ :ecore_evas_manual_render, [ :ecore_evas_p ], :void ], + # EAPI void ecore_evas_comp_sync_set(Ecore_Evas *ee, Eina_Bool do_sync); + [ :ecore_evas_comp_sync_set, [ :ecore_evas_p, :eina_bool ], :void ], + # EAPI Eina_Bool ecore_evas_comp_sync_get(const Ecore_Evas *ee); + [ :ecore_evas_comp_sync_get, [ :ecore_evas_p ], :eina_bool ], + # EAPI Ecore_Window ecore_evas_window_get(const Ecore_Evas *ee); + [ :ecore_evas_window_get, [ :ecore_evas_p ], :uintptr_t ], + # EAPI Eina_Bool ecore_evas_object_associate(Ecore_Evas *ee, Evas_Object *obj, Ecore_Evas_Object_Associate_Flags flags); + [ :ecore_evas_object_associate, [ :ecore_evas_p, :evas_object_p, :ecore_evas_object_associate_flags ], :eina_bool ], + # EAPI Eina_Bool ecore_evas_object_dissociate(Ecore_Evas *ee, Evas_Object *obj); + [ :ecore_evas_object_dissociate, [ :ecore_evas_p, :evas_object_p ], :eina_bool ], + # EAPI Evas_Object *ecore_evas_object_associate_get(const Ecore_Evas *ee); + [ :ecore_evas_object_associate_get, [ :ecore_evas_p ], :evas_object_p ], + # EAPI unsigned char ecore_getopt_callback_ecore_evas_list_engines(const Ecore_Getopt *parser, const Ecore_Getopt_Desc *desc, const char *str, void *data, Ecore_Getopt_Value *storage); + [ :ecore_getopt_callback_ecore_evas_list_engines, [ :ecore_getopt_p, :ecore_getopt_desc_p, :string, :void_p, :ecore_getopt_value_p ], :uchar + ], + # EAPI Eina_List *ecore_evas_ecore_evas_list_get(void); + [ :ecore_evas_ecore_evas_list_get, [ ], :eina_list_p ], + # EAPI void ecore_evas_x11_leader_set(Ecore_Evas *ee, Ecore_X_Window win); + [ :ecore_evas_x11_leader_set, [ :ecore_evas_p, :uint ], :void ], + # EAPI Ecore_X_Window ecore_evas_x11_leader_get(Ecore_Evas *ee); + [ :ecore_evas_x11_leader_get, [ :ecore_evas_p ], :uint ], + # EAPI void ecore_evas_x11_leader_default_set(Ecore_Evas *ee); + [ :ecore_evas_x11_leader_default_set, [ :ecore_evas_p ], :void ], + # EAPI void ecore_evas_x11_shape_input_rectangle_set(Ecore_Evas *ee, int x, int y, int w, int h); + [ :ecore_evas_x11_shape_input_rectangle_set, [ :ecore_evas_p, :int, :int, :int, :int ], :void ], + # EAPI void ecore_evas_x11_shape_input_rectangle_add(Ecore_Evas *ee, int x, int y, int w, int h); + [ :ecore_evas_x11_shape_input_rectangle_add, [ :ecore_evas_p, :int, :int, :int, :int ], :void ], + # EAPI void ecore_evas_x11_shape_input_rectangle_subtract(Ecore_Evas *ee, int x, int y, int w, int h); + [ :ecore_evas_x11_shape_input_rectangle_subtract, [ :ecore_evas_p, :int, :int, :int, :int ], :void ], + # EAPI void ecore_evas_x11_shape_input_empty(Ecore_Evas *ee); + [ :ecore_evas_x11_shape_input_empty, [ :ecore_evas_p ], :void ], + # EAPI void ecore_evas_x11_shape_input_reset(Ecore_Evas *ee); + [ :ecore_evas_x11_shape_input_reset, [ :ecore_evas_p ], :void ], + # EAPI void ecore_evas_x11_shape_input_apply(Ecore_Evas *ee); + [ :ecore_evas_x11_shape_input_apply, [ :ecore_evas_p ], :void ], + ] + # + attach_fcts fcts + # + end +end +# +# EOF diff --git a/lib/efl/ffi/ecore_getopt.rb b/lib/efl/ffi/ecore_getopt.rb new file mode 100644 index 0000000..0dffd49 --- /dev/null +++ b/lib/efl/ffi/ecore_getopt.rb @@ -0,0 +1,71 @@ +#! /usr/bin/env ruby +# -*- coding: UTF-8 -*- +# +require 'efl/ffi' +# +module Efl + # + module EcoreGetopt + # + extend Efl::FFIHelper + # + def self.method_missing m, *args, &block + sym = 'ecore_getopt_'+m.to_s + raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym + self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end" + self.send sym, *args, &block + end + # + ffi_lib 'ecore' + # + # ENUMS + # typedef enum {...} Ecore_Getopt_Action; + enum :ecore_getopt_action, [ :ecore_getopt_action_store, :ecore_getopt_action_store_const, :ecore_getopt_action_store_true, + :ecore_getopt_action_store_false, :ecore_getopt_action_choice, :ecore_getopt_action_append, :ecore_getopt_action_count, :ecore_getopt_action_callback, + :ecore_getopt_action_help, :ecore_getopt_action_version, :ecore_getopt_action_copyright, :ecore_getopt_action_license ] + # typedef enum {...} Ecore_Getopt_Type; + enum :ecore_getopt_type, [ :ecore_getopt_type_str, :ecore_getopt_type_bool, :ecore_getopt_type_short, :ecore_getopt_type_int, + :ecore_getopt_type_long, :ecore_getopt_type_ushort, :ecore_getopt_type_uint, :ecore_getopt_type_ulong, :ecore_getopt_type_double ] + # typedef enum {...} Ecore_Getopt_Desc_Arg_Requirement; + enum :ecore_getopt_desc_arg_requirement, [ :ecore_getopt_desc_arg_requirement_no, 0, :ecore_getopt_desc_arg_requirement_yes, 1, + :ecore_getopt_desc_arg_requirement_optional, 3 ] + # + # TYPEDEFS + # typedef union _Ecore_Getopt_Value Ecore_Getopt_Value; + typedef :pointer, :ecore_getopt_value + typedef :pointer, :ecore_getopt_value_p + # typedef struct _Ecore_Getopt_Desc_Store Ecore_Getopt_Desc_Store; + typedef :pointer, :ecore_getopt_desc_store + # typedef struct _Ecore_Getopt_Desc_Callback Ecore_Getopt_Desc_Callback; + typedef :pointer, :ecore_getopt_desc_callback + # typedef struct _Ecore_Getopt_Desc Ecore_Getopt_Desc; + typedef :pointer, :ecore_getopt_desc + typedef :pointer, :ecore_getopt_desc_p + # typedef struct _Ecore_Getopt Ecore_Getopt; + typedef :pointer, :ecore_getopt + typedef :pointer, :ecore_getopt_p + # + # CALLBACKS + # + # FUNCTIONS + fcts = [ + # EAPI void ecore_getopt_help(FILE *fp, const Ecore_Getopt *info); + [ :ecore_getopt_help, [ :pointer, :ecore_getopt_p ], :void ], + # EAPI Eina_Bool ecore_getopt_parser_has_duplicates(const Ecore_Getopt *parser); + [ :ecore_getopt_parser_has_duplicates, [ :ecore_getopt_p ], :eina_bool ], + # EAPI int ecore_getopt_parse(const Ecore_Getopt *parser, Ecore_Getopt_Value *values, int argc, char **argv); + [ :ecore_getopt_parse, [ :ecore_getopt_p, :ecore_getopt_value_p, :int, :string_array ], :int ], + # EAPI Eina_List *ecore_getopt_list_free(Eina_List *list); + [ :ecore_getopt_list_free, [ :eina_list_p ], :eina_list_p ], + # EAPI Eina_Bool ecore_getopt_callback_geometry_parse(const Ecore_Getopt *parser, const Ecore_Getopt_Desc *desc, const char *str, void *data, Ecore_Getopt_Value *storage); + [ :ecore_getopt_callback_geometry_parse, [ :ecore_getopt_p, :ecore_getopt_desc_p, :string, :void_p, :ecore_getopt_value_p ], :eina_bool ], + # EAPI Eina_Bool ecore_getopt_callback_size_parse(const Ecore_Getopt *parser, const Ecore_Getopt_Desc *desc, const char *str, void *data, Ecore_Getopt_Value *storage); + [ :ecore_getopt_callback_size_parse, [ :ecore_getopt_p, :ecore_getopt_desc_p, :string, :void_p, :ecore_getopt_value_p ], :eina_bool ], + ] + # + attach_fcts fcts + # + end +end +# +# EOF diff --git a/lib/efl/ffi/ecore_input.rb b/lib/efl/ffi/ecore_input.rb new file mode 100644 index 0000000..992ed6c --- /dev/null +++ b/lib/efl/ffi/ecore_input.rb @@ -0,0 +1,81 @@ +#! /usr/bin/env ruby +# -*- coding: UTF-8 -*- +# +require 'efl/ffi' +# +module Efl + # + module EcoreInput + # + extend Efl::FFIHelper + # + def self.method_missing m, *args, &block + sym = 'ecore_event_'+m.to_s + raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym + self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end" + self.send sym, *args, &block + end + # + ffi_lib 'ecore_input' + # + # ENUMS + # typedef enum _Ecore_Event_Modifier {...} Ecore_Event_Modifier; + enum :ecore_event_modifier, [ :ecore_none, :ecore_shift, :ecore_ctrl, :ecore_alt, :ecore_win, :ecore_scroll, :ecore_caps, :ecore_last ] + # typedef enum _Ecore_Event_Press {...} Ecore_Event_Press; + enum :ecore_event_press, [ :ecore_down, :ecore_up ] + # typedef enum _Ecore_Event_IO {...} Ecore_Event_IO; + enum :ecore_event_io, [ :ecore_in, :ecore_out ] + # + # TYPEDEFS + # typedef uintptr_t Ecore_Window; + typedef :uintptr_t, :ecore_window + # typedef struct _Ecore_Event_Key Ecore_Event_Key; + typedef :pointer, :ecore_event_key + # typedef struct _Ecore_Event_Mouse_Button Ecore_Event_Mouse_Button; + typedef :pointer, :ecore_event_mouse_button + # typedef struct _Ecore_Event_Mouse_Wheel Ecore_Event_Mouse_Wheel; + typedef :pointer, :ecore_event_mouse_wheel + # typedef struct _Ecore_Event_Mouse_Move Ecore_Event_Mouse_Move; + typedef :pointer, :ecore_event_mouse_move + # typedef struct _Ecore_Event_Mouse_IO Ecore_Event_Mouse_IO; + typedef :pointer, :ecore_event_mouse_io + # typedef struct _Ecore_Event_Modifiers Ecore_Event_Modifiers; + typedef :pointer, :ecore_event_modifiers + typedef :pointer, :ecore_event_modifiers_p + # + # CALLBACKS + # + # FUNCTIONS + fcts = [ + # EAPI extern int ECORE_EVENT_KEY_DOWN; + # FIXME + # EAPI extern int ECORE_EVENT_KEY_UP; + # FIXME + # EAPI extern int ECORE_EVENT_MOUSE_BUTTON_DOWN; + # FIXME + # EAPI extern int ECORE_EVENT_MOUSE_BUTTON_UP; + # FIXME + # EAPI extern int ECORE_EVENT_MOUSE_MOVE; + # FIXME + # EAPI extern int ECORE_EVENT_MOUSE_WHEEL; + # FIXME + # EAPI extern int ECORE_EVENT_MOUSE_IN; + # FIXME + # EAPI extern int ECORE_EVENT_MOUSE_OUT; + # FIXME + # EAPI int ecore_event_init(void); + [ :ecore_event_init, [ ], :int ], + # EAPI int ecore_event_shutdown(void); + [ :ecore_event_shutdown, [ ], :int ], + # EAPI unsigned int ecore_event_modifier_mask(Ecore_Event_Modifier modifier); + [ :ecore_event_modifier_mask, [ :ecore_event_modifier ], :uint ], + # EAPI Ecore_Event_Modifier ecore_event_update_modifier(const char *key, Ecore_Event_Modifiers *modifiers, int inc); + [ :ecore_event_update_modifier, [ :string, :ecore_event_modifiers_p, :int ], :ecore_event_modifier ], + ] + # + attach_fcts fcts + # + end +end +# +# EOF diff --git a/lib/efl/ffi/edje.rb b/lib/efl/ffi/edje.rb index c75f28f..de05678 100644 --- a/lib/efl/ffi/edje.rb +++ b/lib/efl/ffi/edje.rb @@ -6,13 +6,15 @@ require 'efl/ffi' module Efl # module Edje + # + extend Efl::FFIHelper + # def self.method_missing m, *args, &block - return Efl::FFI.send 'edje_'+m.to_s, *args, &block + sym = 'edje_'+m.to_s + raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym + self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end" + self.send sym, *args, &block end - end - # - module FFI - # # ffi_lib 'edje' # @@ -453,6 +455,7 @@ module Efl ] # attach_fcts fcts + # end end # diff --git a/lib/efl/ffi/eet.rb b/lib/efl/ffi/eet.rb index 5e78e09..51b6df1 100644 --- a/lib/efl/ffi/eet.rb +++ b/lib/efl/ffi/eet.rb @@ -6,13 +6,15 @@ require 'efl/ffi' module Efl # module Eet + # + extend Efl::FFIHelper + # def self.method_missing m, *args, &block - return Efl::FFI.send 'eet_'+m.to_s, *args, &block + sym = 'eet_'+m.to_s + raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym + self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end" + self.send sym, *args, &block end - end - # - module FFI - # # ffi_lib 'eet' # @@ -327,6 +329,7 @@ module Efl ] # attach_fcts fcts + # end end # diff --git a/lib/efl/ffi/eina.rb b/lib/efl/ffi/eina.rb index 6d09164..8ecfd4e 100644 --- a/lib/efl/ffi/eina.rb +++ b/lib/efl/ffi/eina.rb @@ -6,13 +6,15 @@ require 'efl/ffi' module Efl # module Eina + # + extend Efl::FFIHelper + # def self.method_missing m, *args, &block - return Efl::FFI.send 'eina_'+m.to_s, *args, &block + sym = 'eina_'+m.to_s + raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym + self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end" + self.send sym, *args, &block end - end - # - module FFI - # # ffi_lib 'eina' # @@ -39,6 +41,7 @@ module Efl ] # attach_fcts fcts + # end end # diff --git a/lib/efl/ffi/eina/eina_hash.rb b/lib/efl/ffi/eina/eina_hash.rb deleted file mode 100644 index 1b110cc..0000000 --- a/lib/efl/ffi/eina/eina_hash.rb +++ /dev/null @@ -1,108 +0,0 @@ -#! /usr/bin/env ruby -# -*- coding: UTF-8 -*- -# -require 'efl/ffi' -# -module Efl - # - module EinaHash - def self.method_missing m, *args, &block - return Efl::FFI.send 'eina_hash_'+m.to_s, *args, &block - end - end - # - module FFI - # - # - ffi_lib 'eina' - # - # ENUMS - # - # TYPEDEFS - # typedef struct _Eina_Hash Eina_Hash; - typedef :pointer, :eina_hash - typedef :pointer, :eina_hash_p - # typedef struct _Eina_Hash_Tuple Eina_Hash_Tuple; - typedef :pointer, :eina_hash_tuple - # - # CALLBACKS - # typedef unsigned int (*Eina_Key_Length) (const void *key); - callback :eina_key_length, [ :void_p ], :uint - # typedef int (*Eina_Key_Cmp) (const void *key1, int key1_length, const void *key2, int key2_length); - callback :eina_key_cmp, [ :void_p, :int, :void_p, :int ], :int - # typedef int (*Eina_Key_Hash) (const void *key, int key_length); - callback :eina_key_hash, [ :void_p, :int ], :int - # typedef Eina_Bool (*Eina_Hash_Foreach) (const Eina_Hash *hash, const void *key, void *data, void *fdata); - callback :eina_hash_foreach, [ :eina_hash_p, :void_p, :void_p, :void_p ], :eina_bool - # - # FUNCTIONS - fcts = [ - # EAPI Eina_Hash *eina_hash_new(Eina_Key_Length key_length_cb, Eina_Key_Cmp key_cmp_cb, Eina_Key_Hash key_hash_cb, Eina_Free_Cb data_free_cb, int buckets_power_size); - [ :eina_hash_new, [ :eina_key_length, :eina_key_cmp, :eina_key_hash, :eina_free_cb, :int ], :eina_hash_p ], - # EAPI Eina_Hash *eina_hash_string_djb2_new(Eina_Free_Cb data_free_cb); - [ :eina_hash_string_djb2_new, [ :eina_free_cb ], :eina_hash_p ], - # EAPI Eina_Hash *eina_hash_string_superfast_new(Eina_Free_Cb data_free_cb); - [ :eina_hash_string_superfast_new, [ :eina_free_cb ], :eina_hash_p ], - # EAPI Eina_Hash *eina_hash_string_small_new(Eina_Free_Cb data_free_cb); - [ :eina_hash_string_small_new, [ :eina_free_cb ], :eina_hash_p ], - # EAPI Eina_Hash *eina_hash_int32_new(Eina_Free_Cb data_free_cb); - [ :eina_hash_int32_new, [ :eina_free_cb ], :eina_hash_p ], - # EAPI Eina_Hash *eina_hash_int64_new(Eina_Free_Cb data_free_cb); - [ :eina_hash_int64_new, [ :eina_free_cb ], :eina_hash_p ], - # EAPI Eina_Hash *eina_hash_pointer_new(Eina_Free_Cb data_free_cb); - [ :eina_hash_pointer_new, [ :eina_free_cb ], :eina_hash_p ], - # EAPI Eina_Hash *eina_hash_stringshared_new(Eina_Free_Cb data_free_cb); - [ :eina_hash_stringshared_new, [ :eina_free_cb ], :eina_hash_p ], - # EAPI Eina_Bool eina_hash_add(Eina_Hash *hash, const void *key, const void *data); - [ :eina_hash_add, [ :eina_hash_p, :void_p, :void_p ], :eina_bool ], - # EAPI Eina_Bool eina_hash_direct_add(Eina_Hash *hash, const void *key, const void *data); - [ :eina_hash_direct_add, [ :eina_hash_p, :void_p, :void_p ], :eina_bool ], - # EAPI Eina_Bool eina_hash_del(Eina_Hash *hash, const void *key, const void *data); - [ :eina_hash_del, [ :eina_hash_p, :void_p, :void_p ], :eina_bool ], - # EAPI void *eina_hash_find(const Eina_Hash *hash, const void *key); - [ :eina_hash_find, [ :eina_hash_p, :void_p ], :void_p ], - # EAPI void *eina_hash_modify(Eina_Hash *hash, const void *key, const void *data); - [ :eina_hash_modify, [ :eina_hash_p, :void_p, :void_p ], :void_p ], - # EAPI void *eina_hash_set(Eina_Hash *hash, const void *key, const void *data); - [ :eina_hash_set, [ :eina_hash_p, :void_p, :void_p ], :void_p ], - # EAPI Eina_Bool eina_hash_move(Eina_Hash *hash, const void *old_key, const void *new_key); - [ :eina_hash_move, [ :eina_hash_p, :void_p, :void_p ], :eina_bool ], - # EAPI void eina_hash_free(Eina_Hash *hash); - [ :eina_hash_free, [ :eina_hash_p ], :void ], - # EAPI void eina_hash_free_buckets(Eina_Hash *hash); - [ :eina_hash_free_buckets, [ :eina_hash_p ], :void ], - # EAPI int eina_hash_population(const Eina_Hash *hash); - [ :eina_hash_population, [ :eina_hash_p ], :int ], - # EAPI Eina_Bool eina_hash_add_by_hash(Eina_Hash *hash, const void *key, int key_length, int key_hash, const void *data); - [ :eina_hash_add_by_hash, [ :eina_hash_p, :void_p, :int, :int, :void_p ], :eina_bool ], - # EAPI Eina_Bool eina_hash_direct_add_by_hash(Eina_Hash *hash, const void *key, int key_length, int key_hash, const void *data); - [ :eina_hash_direct_add_by_hash, [ :eina_hash_p, :void_p, :int, :int, :void_p ], :eina_bool ], - # EAPI Eina_Bool eina_hash_del_by_key_hash(Eina_Hash *hash, const void *key, int key_length, int key_hash); - [ :eina_hash_del_by_key_hash, [ :eina_hash_p, :void_p, :int, :int ], :eina_bool ], - # EAPI Eina_Bool eina_hash_del_by_key(Eina_Hash *hash, const void *key); - [ :eina_hash_del_by_key, [ :eina_hash_p, :void_p ], :eina_bool ], - # EAPI Eina_Bool eina_hash_del_by_data(Eina_Hash *hash, const void *data); - [ :eina_hash_del_by_data, [ :eina_hash_p, :void_p ], :eina_bool ], - # EAPI Eina_Bool eina_hash_del_by_hash(Eina_Hash *hash, const void *key, int key_length, int key_hash, const void *data); - [ :eina_hash_del_by_hash, [ :eina_hash_p, :void_p, :int, :int, :void_p ], :eina_bool ], - # EAPI void *eina_hash_find_by_hash(const Eina_Hash *hash, const void *key, int key_length, int key_hash); - [ :eina_hash_find_by_hash, [ :eina_hash_p, :void_p, :int, :int ], :void_p ], - # EAPI void *eina_hash_modify_by_hash(Eina_Hash *hash, const void *key, int key_length, int key_hash, const void *data); - [ :eina_hash_modify_by_hash, [ :eina_hash_p, :void_p, :int, :int, :void_p ], :void_p ], - # EAPI Eina_Iterator *eina_hash_iterator_key_new(const Eina_Hash *hash); - [ :eina_hash_iterator_key_new, [ :eina_hash_p ], :eina_iterator_p ], - # EAPI Eina_Iterator *eina_hash_iterator_data_new(const Eina_Hash *hash); - [ :eina_hash_iterator_data_new, [ :eina_hash_p ], :eina_iterator_p ], - # EAPI Eina_Iterator *eina_hash_iterator_tuple_new(const Eina_Hash *hash); - [ :eina_hash_iterator_tuple_new, [ :eina_hash_p ], :eina_iterator_p ], - # EAPI void eina_hash_foreach(const Eina_Hash *hash, Eina_Hash_Foreach cb, const void *fdata); - [ :eina_hash_foreach, [ :eina_hash_p, :eina_hash_foreach, :void_p ], :void ], - # EAPI int eina_hash_superfast(const char *key, int len); - [ :eina_hash_superfast, [ :string, :int ], :int ], - ] - # - attach_fcts fcts - end -end -# -# EOF diff --git a/lib/efl/ffi/eina/eina_list.rb b/lib/efl/ffi/eina/eina_list.rb deleted file mode 100644 index 2799433..0000000 --- a/lib/efl/ffi/eina/eina_list.rb +++ /dev/null @@ -1,105 +0,0 @@ -#! /usr/bin/env ruby -# -*- coding: UTF-8 -*- -# -require 'efl/ffi' -# -module Efl - # - module EinaList - def self.method_missing m, *args, &block - return Efl::FFI.send 'eina_list_'+m.to_s, *args, &block - end - end - # - module FFI - # - # - ffi_lib 'eina' - # - # ENUMS - # - # TYPEDEFS - # typedef struct _Eina_List Eina_List; - typedef :pointer, :eina_list - typedef :pointer, :eina_list_p - typedef :pointer, :eina_list_pp - # typedef struct _Eina_List_Accounting Eina_List_Accounting; - typedef :pointer, :eina_list_accounting - # - # CALLBACKS - # - # FUNCTIONS - fcts = [ - # EAPI Eina_List *eina_list_append(Eina_List *list, const void *data); - [ :eina_list_append, [ :eina_list_p, :void_p ], :eina_list_p ], - # EAPI Eina_List *eina_list_prepend(Eina_List *list, const void *data); - [ :eina_list_prepend, [ :eina_list_p, :void_p ], :eina_list_p ], - # EAPI Eina_List *eina_list_append_relative(Eina_List *list, const void *data, const void *relative); - [ :eina_list_append_relative, [ :eina_list_p, :void_p, :void_p ], :eina_list_p ], - # EAPI Eina_List *eina_list_append_relative_list(Eina_List *list, const void *data, Eina_List *relative); - [ :eina_list_append_relative_list, [ :eina_list_p, :void_p, :eina_list_p ], :eina_list_p ], - # EAPI Eina_List *eina_list_prepend_relative(Eina_List *list, const void *data, const void *relative); - [ :eina_list_prepend_relative, [ :eina_list_p, :void_p, :void_p ], :eina_list_p ], - # EAPI Eina_List *eina_list_prepend_relative_list(Eina_List *list, const void *data, Eina_List *relative); - [ :eina_list_prepend_relative_list, [ :eina_list_p, :void_p, :eina_list_p ], :eina_list_p ], - # EAPI Eina_List *eina_list_sorted_insert(Eina_List *list, Eina_Compare_Cb func, const void *data); - [ :eina_list_sorted_insert, [ :eina_list_p, :eina_compare_cb, :void_p ], :eina_list_p ], - # EAPI Eina_List *eina_list_remove(Eina_List *list, const void *data); - [ :eina_list_remove, [ :eina_list_p, :void_p ], :eina_list_p ], - # EAPI Eina_List *eina_list_remove_list(Eina_List *list, Eina_List *remove_list); - [ :eina_list_remove_list, [ :eina_list_p, :eina_list_p ], :eina_list_p ], - # EAPI Eina_List *eina_list_promote_list(Eina_List *list, Eina_List *move_list); - [ :eina_list_promote_list, [ :eina_list_p, :eina_list_p ], :eina_list_p ], - # EAPI Eina_List *eina_list_demote_list(Eina_List *list, Eina_List *move_list); - [ :eina_list_demote_list, [ :eina_list_p, :eina_list_p ], :eina_list_p ], - # EAPI void *eina_list_data_find(const Eina_List *list, const void *data); - [ :eina_list_data_find, [ :eina_list_p, :void_p ], :void_p ], - # EAPI Eina_List *eina_list_data_find_list(const Eina_List *list, const void *data); - [ :eina_list_data_find_list, [ :eina_list_p, :void_p ], :eina_list_p ], - # EAPI Eina_Bool eina_list_move(Eina_List **to, Eina_List **from, void *data); - [ :eina_list_move, [ :eina_list_pp, :eina_list_pp, :void_p ], :eina_bool ], - # EAPI Eina_Bool eina_list_move_list(Eina_List **to, Eina_List **from, Eina_List *data); - [ :eina_list_move_list, [ :eina_list_pp, :eina_list_pp, :eina_list_p ], :eina_bool ], - # EAPI Eina_List *eina_list_free(Eina_List *list); - [ :eina_list_free, [ :eina_list_p ], :eina_list_p ], - # EAPI void *eina_list_nth(const Eina_List *list, unsigned int n); - [ :eina_list_nth, [ :eina_list_p, :uint ], :void_p ], - # EAPI Eina_List *eina_list_nth_list(const Eina_List *list, unsigned int n); - [ :eina_list_nth_list, [ :eina_list_p, :uint ], :eina_list_p ], - # EAPI Eina_List *eina_list_reverse(Eina_List *list); - [ :eina_list_reverse, [ :eina_list_p ], :eina_list_p ], - # EAPI Eina_List *eina_list_reverse_clone(const Eina_List *list); - [ :eina_list_reverse_clone, [ :eina_list_p ], :eina_list_p ], - # EAPI Eina_List *eina_list_clone(const Eina_List *list); - [ :eina_list_clone, [ :eina_list_p ], :eina_list_p ], - # EAPI Eina_List *eina_list_sort(Eina_List *list, unsigned int size, Eina_Compare_Cb func); - [ :eina_list_sort, [ :eina_list_p, :uint, :eina_compare_cb ], :eina_list_p ], - # EAPI Eina_List *eina_list_merge(Eina_List *left, Eina_List *right); - [ :eina_list_merge, [ :eina_list_p, :eina_list_p ], :eina_list_p ], - # EAPI Eina_List *eina_list_sorted_merge(Eina_List *left, Eina_List *right, Eina_Compare_Cb func); - [ :eina_list_sorted_merge, [ :eina_list_p, :eina_list_p, :eina_compare_cb ], :eina_list_p ], - # EAPI Eina_List *eina_list_split_list(Eina_List *list, Eina_List *relative, Eina_List **right); - [ :eina_list_split_list, [ :eina_list_p, :eina_list_p, :eina_list_pp ], :eina_list_p ], - # EAPI Eina_List *eina_list_search_sorted_near_list(const Eina_List *list, Eina_Compare_Cb func, const void *data, int *result_cmp); - [ :eina_list_search_sorted_near_list, [ :eina_list_p, :eina_compare_cb, :void_p, :int_p ], :eina_list_p ], - # EAPI Eina_List *eina_list_search_sorted_list(const Eina_List *list, Eina_Compare_Cb func, const void *data); - [ :eina_list_search_sorted_list, [ :eina_list_p, :eina_compare_cb, :void_p ], :eina_list_p ], - # EAPI void *eina_list_search_sorted(const Eina_List *list, Eina_Compare_Cb func, const void *data); - [ :eina_list_search_sorted, [ :eina_list_p, :eina_compare_cb, :void_p ], :void_p ], - # EAPI Eina_List *eina_list_search_unsorted_list(const Eina_List *list, Eina_Compare_Cb func, const void *data); - [ :eina_list_search_unsorted_list, [ :eina_list_p, :eina_compare_cb, :void_p ], :eina_list_p ], - # EAPI void *eina_list_search_unsorted(const Eina_List *list, Eina_Compare_Cb func, const void *data); - [ :eina_list_search_unsorted, [ :eina_list_p, :eina_compare_cb, :void_p ], :void_p ], - # EAPI Eina_Iterator *eina_list_iterator_new(const Eina_List *list); - [ :eina_list_iterator_new, [ :eina_list_p ], :eina_iterator_p ], - # EAPI Eina_Iterator *eina_list_iterator_reversed_new(const Eina_List *list); - [ :eina_list_iterator_reversed_new, [ :eina_list_p ], :eina_iterator_p ], - # EAPI Eina_Accessor *eina_list_accessor_new(const Eina_List *list); - [ :eina_list_accessor_new, [ :eina_list_p ], :eina_accessor_p ], - ] - # - attach_fcts fcts - end -end -# -# EOF diff --git a/lib/efl/ffi/eina/eina_types.rb b/lib/efl/ffi/eina/eina_types.rb deleted file mode 100644 index 5a5dd4d..0000000 --- a/lib/efl/ffi/eina/eina_types.rb +++ /dev/null @@ -1,44 +0,0 @@ -#! /usr/bin/env ruby -# -*- coding: UTF-8 -*- -# -require 'efl/ffi' -# -module Efl - # - module Eina - def self.method_missing m, *args, &block - return Efl::FFI.send 'eina_'+m.to_s, *args, &block - end - end - # - module FFI - # - # - ffi_lib 'eina' - # - # ENUMS - # - # TYPEDEFS - # typedef unsigned char Eina_Bool; - typedef :bool, :eina_bool - typedef :pointer, :eina_bool_p - # - # CALLBACKS - # typedef int (*Eina_Compare_Cb) (const void *data1, const void *data2); - callback :eina_compare_cb, [ :void_p, :void_p ], :int - # typedef Eina_Bool (*Eina_Each_Cb) (const void *container, void *data, void *fdata); - callback :eina_each_cb, [ :void_p, :void_p, :void_p ], :eina_bool - # typedef void (*Eina_Free_Cb) (void *data); - callback :eina_free_cb, [ :void_p ], :void - # - # FUNCTIONS - fcts = [ - # EAPI extern const unsigned int eina_prime_table[]; - # FIXME - ] - # - attach_fcts fcts - end -end -# -# EOF diff --git a/lib/efl/ffi/eina_hash.rb b/lib/efl/ffi/eina_hash.rb new file mode 100644 index 0000000..e387fb5 --- /dev/null +++ b/lib/efl/ffi/eina_hash.rb @@ -0,0 +1,111 @@ +#! /usr/bin/env ruby +# -*- coding: UTF-8 -*- +# +require 'efl/ffi' +# +module Efl + # + module EinaHash + # + extend Efl::FFIHelper + # + def self.method_missing m, *args, &block + sym = 'eina_hash_'+m.to_s + raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym + self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end" + self.send sym, *args, &block + end + # + ffi_lib 'eina' + # + # ENUMS + # + # TYPEDEFS + # typedef struct _Eina_Hash Eina_Hash; + typedef :pointer, :eina_hash + typedef :pointer, :eina_hash_p + # typedef struct _Eina_Hash_Tuple Eina_Hash_Tuple; + typedef :pointer, :eina_hash_tuple + # + # CALLBACKS + # typedef unsigned int (*Eina_Key_Length) (const void *key); + callback :eina_key_length, [ :void_p ], :uint + # typedef int (*Eina_Key_Cmp) (const void *key1, int key1_length, const void *key2, int key2_length); + callback :eina_key_cmp, [ :void_p, :int, :void_p, :int ], :int + # typedef int (*Eina_Key_Hash) (const void *key, int key_length); + callback :eina_key_hash, [ :void_p, :int ], :int + # typedef Eina_Bool (*Eina_Hash_Foreach) (const Eina_Hash *hash, const void *key, void *data, void *fdata); + callback :eina_hash_foreach, [ :eina_hash_p, :void_p, :void_p, :void_p ], :eina_bool + # + # FUNCTIONS + fcts = [ + # EAPI Eina_Hash *eina_hash_new(Eina_Key_Length key_length_cb, Eina_Key_Cmp key_cmp_cb, Eina_Key_Hash key_hash_cb, Eina_Free_Cb data_free_cb, int buckets_power_size); + [ :eina_hash_new, [ :eina_key_length, :eina_key_cmp, :eina_key_hash, :eina_free_cb, :int ], :eina_hash_p ], + # EAPI Eina_Hash *eina_hash_string_djb2_new(Eina_Free_Cb data_free_cb); + [ :eina_hash_string_djb2_new, [ :eina_free_cb ], :eina_hash_p ], + # EAPI Eina_Hash *eina_hash_string_superfast_new(Eina_Free_Cb data_free_cb); + [ :eina_hash_string_superfast_new, [ :eina_free_cb ], :eina_hash_p ], + # EAPI Eina_Hash *eina_hash_string_small_new(Eina_Free_Cb data_free_cb); + [ :eina_hash_string_small_new, [ :eina_free_cb ], :eina_hash_p ], + # EAPI Eina_Hash *eina_hash_int32_new(Eina_Free_Cb data_free_cb); + [ :eina_hash_int32_new, [ :eina_free_cb ], :eina_hash_p ], + # EAPI Eina_Hash *eina_hash_int64_new(Eina_Free_Cb data_free_cb); + [ :eina_hash_int64_new, [ :eina_free_cb ], :eina_hash_p ], + # EAPI Eina_Hash *eina_hash_pointer_new(Eina_Free_Cb data_free_cb); + [ :eina_hash_pointer_new, [ :eina_free_cb ], :eina_hash_p ], + # EAPI Eina_Hash *eina_hash_stringshared_new(Eina_Free_Cb data_free_cb); + [ :eina_hash_stringshared_new, [ :eina_free_cb ], :eina_hash_p ], + # EAPI Eina_Bool eina_hash_add(Eina_Hash *hash, const void *key, const void *data); + [ :eina_hash_add, [ :eina_hash_p, :void_p, :void_p ], :eina_bool ], + # EAPI Eina_Bool eina_hash_direct_add(Eina_Hash *hash, const void *key, const void *data); + [ :eina_hash_direct_add, [ :eina_hash_p, :void_p, :void_p ], :eina_bool ], + # EAPI Eina_Bool eina_hash_del(Eina_Hash *hash, const void *key, const void *data); + [ :eina_hash_del, [ :eina_hash_p, :void_p, :void_p ], :eina_bool ], + # EAPI void *eina_hash_find(const Eina_Hash *hash, const void *key); + [ :eina_hash_find, [ :eina_hash_p, :void_p ], :void_p ], + # EAPI void *eina_hash_modify(Eina_Hash *hash, const void *key, const void *data); + [ :eina_hash_modify, [ :eina_hash_p, :void_p, :void_p ], :void_p ], + # EAPI void *eina_hash_set(Eina_Hash *hash, const void *key, const void *data); + [ :eina_hash_set, [ :eina_hash_p, :void_p, :void_p ], :void_p ], + # EAPI Eina_Bool eina_hash_move(Eina_Hash *hash, const void *old_key, const void *new_key); + [ :eina_hash_move, [ :eina_hash_p, :void_p, :void_p ], :eina_bool ], + # EAPI void eina_hash_free(Eina_Hash *hash); + [ :eina_hash_free, [ :eina_hash_p ], :void ], + # EAPI void eina_hash_free_buckets(Eina_Hash *hash); + [ :eina_hash_free_buckets, [ :eina_hash_p ], :void ], + # EAPI int eina_hash_population(const Eina_Hash *hash); + [ :eina_hash_population, [ :eina_hash_p ], :int ], + # EAPI Eina_Bool eina_hash_add_by_hash(Eina_Hash *hash, const void *key, int key_length, int key_hash, const void *data); + [ :eina_hash_add_by_hash, [ :eina_hash_p, :void_p, :int, :int, :void_p ], :eina_bool ], + # EAPI Eina_Bool eina_hash_direct_add_by_hash(Eina_Hash *hash, const void *key, int key_length, int key_hash, const void *data); + [ :eina_hash_direct_add_by_hash, [ :eina_hash_p, :void_p, :int, :int, :void_p ], :eina_bool ], + # EAPI Eina_Bool eina_hash_del_by_key_hash(Eina_Hash *hash, const void *key, int key_length, int key_hash); + [ :eina_hash_del_by_key_hash, [ :eina_hash_p, :void_p, :int, :int ], :eina_bool ], + # EAPI Eina_Bool eina_hash_del_by_key(Eina_Hash *hash, const void *key); + [ :eina_hash_del_by_key, [ :eina_hash_p, :void_p ], :eina_bool ], + # EAPI Eina_Bool eina_hash_del_by_data(Eina_Hash *hash, const void *data); + [ :eina_hash_del_by_data, [ :eina_hash_p, :void_p ], :eina_bool ], + # EAPI Eina_Bool eina_hash_del_by_hash(Eina_Hash *hash, const void *key, int key_length, int key_hash, const void *data); + [ :eina_hash_del_by_hash, [ :eina_hash_p, :void_p, :int, :int, :void_p ], :eina_bool ], + # EAPI void *eina_hash_find_by_hash(const Eina_Hash *hash, const void *key, int key_length, int key_hash); + [ :eina_hash_find_by_hash, [ :eina_hash_p, :void_p, :int, :int ], :void_p ], + # EAPI void *eina_hash_modify_by_hash(Eina_Hash *hash, const void *key, int key_length, int key_hash, const void *data); + [ :eina_hash_modify_by_hash, [ :eina_hash_p, :void_p, :int, :int, :void_p ], :void_p ], + # EAPI Eina_Iterator *eina_hash_iterator_key_new(const Eina_Hash *hash); + [ :eina_hash_iterator_key_new, [ :eina_hash_p ], :eina_iterator_p ], + # EAPI Eina_Iterator *eina_hash_iterator_data_new(const Eina_Hash *hash); + [ :eina_hash_iterator_data_new, [ :eina_hash_p ], :eina_iterator_p ], + # EAPI Eina_Iterator *eina_hash_iterator_tuple_new(const Eina_Hash *hash); + [ :eina_hash_iterator_tuple_new, [ :eina_hash_p ], :eina_iterator_p ], + # EAPI void eina_hash_foreach(const Eina_Hash *hash, Eina_Hash_Foreach cb, const void *fdata); + [ :eina_hash_foreach, [ :eina_hash_p, :eina_hash_foreach, :void_p ], :void ], + # EAPI int eina_hash_superfast(const char *key, int len); + [ :eina_hash_superfast, [ :string, :int ], :int ], + ] + # + attach_fcts fcts + # + end +end +# +# EOF diff --git a/lib/efl/ffi/eina_list.rb b/lib/efl/ffi/eina_list.rb new file mode 100644 index 0000000..939743a --- /dev/null +++ b/lib/efl/ffi/eina_list.rb @@ -0,0 +1,108 @@ +#! /usr/bin/env ruby +# -*- coding: UTF-8 -*- +# +require 'efl/ffi' +# +module Efl + # + module EinaList + # + extend Efl::FFIHelper + # + def self.method_missing m, *args, &block + sym = 'eina_list_'+m.to_s + raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym + self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end" + self.send sym, *args, &block + end + # + ffi_lib 'eina' + # + # ENUMS + # + # TYPEDEFS + # typedef struct _Eina_List Eina_List; + typedef :pointer, :eina_list + typedef :pointer, :eina_list_p + typedef :pointer, :eina_list_pp + # typedef struct _Eina_List_Accounting Eina_List_Accounting; + typedef :pointer, :eina_list_accounting + # + # CALLBACKS + # + # FUNCTIONS + fcts = [ + # EAPI Eina_List *eina_list_append(Eina_List *list, const void *data); + [ :eina_list_append, [ :eina_list_p, :void_p ], :eina_list_p ], + # EAPI Eina_List *eina_list_prepend(Eina_List *list, const void *data); + [ :eina_list_prepend, [ :eina_list_p, :void_p ], :eina_list_p ], + # EAPI Eina_List *eina_list_append_relative(Eina_List *list, const void *data, const void *relative); + [ :eina_list_append_relative, [ :eina_list_p, :void_p, :void_p ], :eina_list_p ], + # EAPI Eina_List *eina_list_append_relative_list(Eina_List *list, const void *data, Eina_List *relative); + [ :eina_list_append_relative_list, [ :eina_list_p, :void_p, :eina_list_p ], :eina_list_p ], + # EAPI Eina_List *eina_list_prepend_relative(Eina_List *list, const void *data, const void *relative); + [ :eina_list_prepend_relative, [ :eina_list_p, :void_p, :void_p ], :eina_list_p ], + # EAPI Eina_List *eina_list_prepend_relative_list(Eina_List *list, const void *data, Eina_List *relative); + [ :eina_list_prepend_relative_list, [ :eina_list_p, :void_p, :eina_list_p ], :eina_list_p ], + # EAPI Eina_List *eina_list_sorted_insert(Eina_List *list, Eina_Compare_Cb func, const void *data); + [ :eina_list_sorted_insert, [ :eina_list_p, :eina_compare_cb, :void_p ], :eina_list_p ], + # EAPI Eina_List *eina_list_remove(Eina_List *list, const void *data); + [ :eina_list_remove, [ :eina_list_p, :void_p ], :eina_list_p ], + # EAPI Eina_List *eina_list_remove_list(Eina_List *list, Eina_List *remove_list); + [ :eina_list_remove_list, [ :eina_list_p, :eina_list_p ], :eina_list_p ], + # EAPI Eina_List *eina_list_promote_list(Eina_List *list, Eina_List *move_list); + [ :eina_list_promote_list, [ :eina_list_p, :eina_list_p ], :eina_list_p ], + # EAPI Eina_List *eina_list_demote_list(Eina_List *list, Eina_List *move_list); + [ :eina_list_demote_list, [ :eina_list_p, :eina_list_p ], :eina_list_p ], + # EAPI void *eina_list_data_find(const Eina_List *list, const void *data); + [ :eina_list_data_find, [ :eina_list_p, :void_p ], :void_p ], + # EAPI Eina_List *eina_list_data_find_list(const Eina_List *list, const void *data); + [ :eina_list_data_find_list, [ :eina_list_p, :void_p ], :eina_list_p ], + # EAPI Eina_Bool eina_list_move(Eina_List **to, Eina_List **from, void *data); + [ :eina_list_move, [ :eina_list_pp, :eina_list_pp, :void_p ], :eina_bool ], + # EAPI Eina_Bool eina_list_move_list(Eina_List **to, Eina_List **from, Eina_List *data); + [ :eina_list_move_list, [ :eina_list_pp, :eina_list_pp, :eina_list_p ], :eina_bool ], + # EAPI Eina_List *eina_list_free(Eina_List *list); + [ :eina_list_free, [ :eina_list_p ], :eina_list_p ], + # EAPI void *eina_list_nth(const Eina_List *list, unsigned int n); + [ :eina_list_nth, [ :eina_list_p, :uint ], :void_p ], + # EAPI Eina_List *eina_list_nth_list(const Eina_List *list, unsigned int n); + [ :eina_list_nth_list, [ :eina_list_p, :uint ], :eina_list_p ], + # EAPI Eina_List *eina_list_reverse(Eina_List *list); + [ :eina_list_reverse, [ :eina_list_p ], :eina_list_p ], + # EAPI Eina_List *eina_list_reverse_clone(const Eina_List *list); + [ :eina_list_reverse_clone, [ :eina_list_p ], :eina_list_p ], + # EAPI Eina_List *eina_list_clone(const Eina_List *list); + [ :eina_list_clone, [ :eina_list_p ], :eina_list_p ], + # EAPI Eina_List *eina_list_sort(Eina_List *list, unsigned int size, Eina_Compare_Cb func); + [ :eina_list_sort, [ :eina_list_p, :uint, :eina_compare_cb ], :eina_list_p ], + # EAPI Eina_List *eina_list_merge(Eina_List *left, Eina_List *right); + [ :eina_list_merge, [ :eina_list_p, :eina_list_p ], :eina_list_p ], + # EAPI Eina_List *eina_list_sorted_merge(Eina_List *left, Eina_List *right, Eina_Compare_Cb func); + [ :eina_list_sorted_merge, [ :eina_list_p, :eina_list_p, :eina_compare_cb ], :eina_list_p ], + # EAPI Eina_List *eina_list_split_list(Eina_List *list, Eina_List *relative, Eina_List **right); + [ :eina_list_split_list, [ :eina_list_p, :eina_list_p, :eina_list_pp ], :eina_list_p ], + # EAPI Eina_List *eina_list_search_sorted_near_list(const Eina_List *list, Eina_Compare_Cb func, const void *data, int *result_cmp); + [ :eina_list_search_sorted_near_list, [ :eina_list_p, :eina_compare_cb, :void_p, :int_p ], :eina_list_p ], + # EAPI Eina_List *eina_list_search_sorted_list(const Eina_List *list, Eina_Compare_Cb func, const void *data); + [ :eina_list_search_sorted_list, [ :eina_list_p, :eina_compare_cb, :void_p ], :eina_list_p ], + # EAPI void *eina_list_search_sorted(const Eina_List *list, Eina_Compare_Cb func, const void *data); + [ :eina_list_search_sorted, [ :eina_list_p, :eina_compare_cb, :void_p ], :void_p ], + # EAPI Eina_List *eina_list_search_unsorted_list(const Eina_List *list, Eina_Compare_Cb func, const void *data); + [ :eina_list_search_unsorted_list, [ :eina_list_p, :eina_compare_cb, :void_p ], :eina_list_p ], + # EAPI void *eina_list_search_unsorted(const Eina_List *list, Eina_Compare_Cb func, const void *data); + [ :eina_list_search_unsorted, [ :eina_list_p, :eina_compare_cb, :void_p ], :void_p ], + # EAPI Eina_Iterator *eina_list_iterator_new(const Eina_List *list); + [ :eina_list_iterator_new, [ :eina_list_p ], :eina_iterator_p ], + # EAPI Eina_Iterator *eina_list_iterator_reversed_new(const Eina_List *list); + [ :eina_list_iterator_reversed_new, [ :eina_list_p ], :eina_iterator_p ], + # EAPI Eina_Accessor *eina_list_accessor_new(const Eina_List *list); + [ :eina_list_accessor_new, [ :eina_list_p ], :eina_accessor_p ], + ] + # + attach_fcts fcts + # + end +end +# +# EOF diff --git a/lib/efl/ffi/eina_types.rb b/lib/efl/ffi/eina_types.rb new file mode 100644 index 0000000..df51613 --- /dev/null +++ b/lib/efl/ffi/eina_types.rb @@ -0,0 +1,47 @@ +#! /usr/bin/env ruby +# -*- coding: UTF-8 -*- +# +require 'efl/ffi' +# +module Efl + # + module Eina + # + extend Efl::FFIHelper + # + def self.method_missing m, *args, &block + sym = 'eina_'+m.to_s + raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym + self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end" + self.send sym, *args, &block + end + # + ffi_lib 'eina' + # + # ENUMS + # + # TYPEDEFS + # typedef unsigned char Eina_Bool; + typedef :bool, :eina_bool + typedef :pointer, :eina_bool_p + # + # CALLBACKS + # typedef int (*Eina_Compare_Cb) (const void *data1, const void *data2); + callback :eina_compare_cb, [ :void_p, :void_p ], :int + # typedef Eina_Bool (*Eina_Each_Cb) (const void *container, void *data, void *fdata); + callback :eina_each_cb, [ :void_p, :void_p, :void_p ], :eina_bool + # typedef void (*Eina_Free_Cb) (void *data); + callback :eina_free_cb, [ :void_p ], :void + # + # FUNCTIONS + fcts = [ + # EAPI extern const unsigned int eina_prime_table[]; + # FIXME + ] + # + attach_fcts fcts + # + end +end +# +# EOF diff --git a/lib/efl/ffi/elementary.rb b/lib/efl/ffi/elementary.rb index 1411b87..dabc667 100644 --- a/lib/efl/ffi/elementary.rb +++ b/lib/efl/ffi/elementary.rb @@ -6,13 +6,15 @@ require 'efl/ffi' module Efl # module Elm + # + extend Efl::FFIHelper + # def self.method_missing m, *args, &block - return Efl::FFI.send 'elm_'+m.to_s, *args, &block + sym = 'elm_'+m.to_s + raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym + self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end" + self.send sym, *args, &block end - end - # - module FFI - # # ffi_lib 'libelementary-ver-pre-svn-09.so.0' # @@ -3211,6 +3213,7 @@ module Efl ] # attach_fcts fcts + # end end # diff --git a/lib/efl/ffi/evas.rb b/lib/efl/ffi/evas.rb index f6bc3c6..ce97982 100644 --- a/lib/efl/ffi/evas.rb +++ b/lib/efl/ffi/evas.rb @@ -6,13 +6,15 @@ require 'efl/ffi' module Efl # module Evas + # + extend Efl::FFIHelper + # def self.method_missing m, *args, &block - return Efl::FFI.send 'evas_'+m.to_s, *args, &block + sym = 'evas_'+m.to_s + raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym + self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end" + self.send sym, *args, &block end - end - # - module FFI - # # ffi_lib 'evas' # @@ -1288,6 +1290,7 @@ module Efl ] # attach_fcts fcts + # end end # -- cgit v1.1-2-g2b99