ffi-efl 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. data/Changelog +12 -0
  2. data/Rakefile +1 -1
  3. data/lib/efl/ecore.rb +17 -6
  4. data/lib/efl/ecore_evas.rb +78 -24
  5. data/lib/efl/ecore_getopt.rb +27 -23
  6. data/lib/efl/ecore_input.rb +1 -1
  7. data/lib/efl/edje.rb +11 -11
  8. data/lib/efl/eet.rb +20 -14
  9. data/lib/efl/eina.rb +1 -1
  10. data/lib/efl/eina_hash.rb +17 -30
  11. data/lib/efl/eina_list.rb +16 -25
  12. data/lib/efl/elementary.rb +8 -19
  13. data/lib/efl/evas.rb +167 -38
  14. data/lib/efl/ffi.rb +28 -17
  15. data/lib/efl/{ffi → native}/ecore.rb +9 -5
  16. data/lib/efl/{ffi → native}/ecore_evas.rb +27 -20
  17. data/lib/efl/{ffi → native}/ecore_getopt.rb +9 -5
  18. data/lib/efl/{ffi → native}/ecore_input.rb +9 -5
  19. data/lib/efl/{ffi → native}/edje.rb +14 -10
  20. data/lib/efl/{ffi → native}/eet.rb +9 -5
  21. data/lib/efl/{ffi → native}/eina.rb +9 -5
  22. data/lib/efl/{ffi → native}/eina_hash.rb +9 -5
  23. data/lib/efl/{ffi → native}/eina_list.rb +9 -5
  24. data/lib/efl/{ffi → native}/eina_types.rb +9 -5
  25. data/lib/efl/{ffi → native}/elementary.rb +70 -66
  26. data/lib/efl/{ffi → native}/evas.rb +11 -7
  27. data/lib/efl/native.rb +16 -0
  28. data/lib/efl.rb +1 -1
  29. data/spec/ecore_evas_spec.rb +325 -6
  30. data/spec/ecore_getopt_spec.rb +70 -104
  31. data/spec/ecore_input_spec.rb +6 -6
  32. data/spec/ecore_spec.rb +63 -60
  33. data/spec/edje_spec.rb +6 -6
  34. data/spec/eet_spec.rb +23 -22
  35. data/spec/eina_hash_spec.rb +53 -58
  36. data/spec/eina_list_spec.rb +28 -18
  37. data/spec/eina_spec.rb +6 -6
  38. data/spec/evas_spec.rb +371 -119
  39. data/tasks/constants.rb +4 -0
  40. data/test/test_edje.rb +1 -1
  41. data/test/test_elm_win-native.rb +38 -0
  42. data/test/test_evas.rb +4 -4
  43. metadata +32 -20
  44. data/test/test_elm_win.rb +0 -35
@@ -6,16 +6,20 @@ require 'efl/ffi'
6
6
  module Efl
7
7
  #
8
8
  module EcoreInput
9
- #
10
- extend Efl::FFIHelper
11
9
  #
12
10
  def self.method_missing m, *args, &block
13
11
  sym = 'ecore_event_'+m.to_s
14
- raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym
15
- self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end"
16
- self.send sym, *args, &block
12
+ raise NameError.new "#{self.name}.#{sym} (#{m})" if not Efl::Native.respond_to? sym
13
+ self.module_eval "def self.#{m} *args, █ r=Efl::Native.#{sym}(*args); yield r if block_given?; r; end"
14
+ self.send m, *args, &block
17
15
  end
18
16
  #
17
+ end
18
+ #
19
+ module Native
20
+ #
21
+ extend Efl::FFIHelper
22
+ #
19
23
  ffi_lib 'ecore_input'
20
24
  #
21
25
  # ENUMS
@@ -6,23 +6,27 @@ require 'efl/ffi'
6
6
  module Efl
7
7
  #
8
8
  module Edje
9
- #
10
- extend Efl::FFIHelper
11
9
  #
12
10
  def self.method_missing m, *args, &block
13
11
  sym = 'edje_'+m.to_s
14
- raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym
15
- self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end"
16
- self.send sym, *args, &block
12
+ raise NameError.new "#{self.name}.#{sym} (#{m})" if not Efl::Native.respond_to? sym
13
+ self.module_eval "def self.#{m} *args, █ r=Efl::Native.#{sym}(*args); yield r if block_given?; r; end"
14
+ self.send m, *args, &block
17
15
  end
18
16
  #
17
+ end
18
+ #
19
+ module Native
20
+ #
21
+ extend Efl::FFIHelper
22
+ #
19
23
  ffi_lib 'edje'
20
24
  #
21
25
  # ENUMS
22
26
  # typedef enum _Edje_Message_Type {...} Edje_Message_Type;
23
27
  enum :edje_message_type, [ :edje_message_none, 0, :edje_message_signal, 1, :edje_message_string, 2, :edje_message_int, 3, :edje_message_float,
24
28
  4, :edje_message_string_set, 5, :edje_message_int_set, 6, :edje_message_float_set, 7, :edje_message_string_int, 8, :edje_message_string_float, 9,
25
- :edje_message_string_int_set, 1, :edje_message_string_float_set, 1 ]
29
+ :edje_message_string_int_set, 10, :edje_message_string_float_set, 11 ]
26
30
  # typedef enum _Edje_Aspect_Control {...} Edje_Aspect_Control;
27
31
  enum :edje_aspect_control, [ :edje_aspect_control_none, 0, :edje_aspect_control_neither, 1, :edje_aspect_control_horizontal, 2,
28
32
  :edje_aspect_control_vertical, 3, :edje_aspect_control_both, 4 ]
@@ -32,19 +36,19 @@ module Efl
32
36
  # typedef enum _Edje_Part_Type {...} Edje_Part_Type;
33
37
  enum :edje_part_type, [ :edje_part_type_none, 0, :edje_part_type_rectangle, 1, :edje_part_type_text, 2, :edje_part_type_image, 3,
34
38
  :edje_part_type_swallow, 4, :edje_part_type_textblock, 5, :edje_part_type_gradient, 6, :edje_part_type_group, 7, :edje_part_type_box, 8,
35
- :edje_part_type_table, 9, :edje_part_type_external, 1, :edje_part_type_proxy, 1, :edje_part_type_last, 1 ]
39
+ :edje_part_type_table, 9, :edje_part_type_external, 10, :edje_part_type_proxy, 11, :edje_part_type_last, 12 ]
36
40
  # typedef enum _Edje_Text_Effect {...} Edje_Text_Effect;
37
41
  enum :edje_text_effect, [ :edje_text_effect_none, 0, :edje_text_effect_plain, 1, :edje_text_effect_outline, 2, :edje_text_effect_soft_outline,
38
42
  3, :edje_text_effect_shadow, 4, :edje_text_effect_soft_shadow, 5, :edje_text_effect_outline_shadow, 6, :edje_text_effect_outline_soft_shadow, 7,
39
- :edje_text_effect_far_shadow, 8, :edje_text_effect_far_soft_shadow, 9, :edje_text_effect_glow, 1, :edje_text_effect_last, 1,
43
+ :edje_text_effect_far_shadow, 8, :edje_text_effect_far_soft_shadow, 9, :edje_text_effect_glow, 10, :edje_text_effect_last, 11,
40
44
  :edje_text_effect_shadow_direction_bottom_right, :edje_text_effect_shadow_direction_bottom, :edje_text_effect_shadow_direction_bottom_left,
41
45
  :edje_text_effect_shadow_direction_left, :edje_text_effect_shadow_direction_top_left, :edje_text_effect_shadow_direction_top,
42
46
  :edje_text_effect_shadow_direction_top_right, :edje_text_effect_shadow_direction_right ]
43
47
  # typedef enum _Edje_Action_Type {...} Edje_Action_Type;
44
48
  enum :edje_action_type, [ :edje_action_type_none, 0, :edje_action_type_state_set, 1, :edje_action_type_action_stop, 2,
45
49
  :edje_action_type_signal_emit, 3, :edje_action_type_drag_val_set, 4, :edje_action_type_drag_val_step, 5, :edje_action_type_drag_val_page, 6,
46
- :edje_action_type_script, 7, :edje_action_type_focus_set, 8, :edje_action_type_reserved00, 9, :edje_action_type_focus_object, 1,
47
- :edje_action_type_param_copy, 1, :edje_action_type_param_set, 1, :edje_action_type_last, 1 ]
50
+ :edje_action_type_script, 7, :edje_action_type_focus_set, 8, :edje_action_type_reserved00, 9, :edje_action_type_focus_object, 10,
51
+ :edje_action_type_param_copy, 11, :edje_action_type_param_set, 12, :edje_action_type_last, 13 ]
48
52
  # typedef enum _Edje_Tween_Mode {...} Edje_Tween_Mode;
49
53
  enum :edje_tween_mode, [ :edje_tween_mode_none, 0, :edje_tween_mode_linear, 1, :edje_tween_mode_sinusoidal, 2, :edje_tween_mode_accelerate, 3,
50
54
  :edje_tween_mode_decelerate, 4, :edje_tween_mode_last, 5 ]
@@ -6,16 +6,20 @@ require 'efl/ffi'
6
6
  module Efl
7
7
  #
8
8
  module Eet
9
- #
10
- extend Efl::FFIHelper
11
9
  #
12
10
  def self.method_missing m, *args, &block
13
11
  sym = 'eet_'+m.to_s
14
- raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym
15
- self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end"
16
- self.send sym, *args, &block
12
+ raise NameError.new "#{self.name}.#{sym} (#{m})" if not Efl::Native.respond_to? sym
13
+ self.module_eval "def self.#{m} *args, █ r=Efl::Native.#{sym}(*args); yield r if block_given?; r; end"
14
+ self.send m, *args, &block
17
15
  end
18
16
  #
17
+ end
18
+ #
19
+ module Native
20
+ #
21
+ extend Efl::FFIHelper
22
+ #
19
23
  ffi_lib 'eet'
20
24
  #
21
25
  # ENUMS
@@ -6,16 +6,20 @@ require 'efl/ffi'
6
6
  module Efl
7
7
  #
8
8
  module Eina
9
- #
10
- extend Efl::FFIHelper
11
9
  #
12
10
  def self.method_missing m, *args, &block
13
11
  sym = 'eina_'+m.to_s
14
- raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym
15
- self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end"
16
- self.send sym, *args, &block
12
+ raise NameError.new "#{self.name}.#{sym} (#{m})" if not Efl::Native.respond_to? sym
13
+ self.module_eval "def self.#{m} *args, █ r=Efl::Native.#{sym}(*args); yield r if block_given?; r; end"
14
+ self.send m, *args, &block
17
15
  end
18
16
  #
17
+ end
18
+ #
19
+ module Native
20
+ #
21
+ extend Efl::FFIHelper
22
+ #
19
23
  ffi_lib 'eina'
20
24
  #
21
25
  # ENUMS
@@ -6,16 +6,20 @@ require 'efl/ffi'
6
6
  module Efl
7
7
  #
8
8
  module EinaHash
9
- #
10
- extend Efl::FFIHelper
11
9
  #
12
10
  def self.method_missing m, *args, &block
13
11
  sym = 'eina_hash_'+m.to_s
14
- raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym
15
- self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end"
16
- self.send sym, *args, &block
12
+ raise NameError.new "#{self.name}.#{sym} (#{m})" if not Efl::Native.respond_to? sym
13
+ self.module_eval "def self.#{m} *args, █ r=Efl::Native.#{sym}(*args); yield r if block_given?; r; end"
14
+ self.send m, *args, &block
17
15
  end
18
16
  #
17
+ end
18
+ #
19
+ module Native
20
+ #
21
+ extend Efl::FFIHelper
22
+ #
19
23
  ffi_lib 'eina'
20
24
  #
21
25
  # ENUMS
@@ -6,16 +6,20 @@ require 'efl/ffi'
6
6
  module Efl
7
7
  #
8
8
  module EinaList
9
- #
10
- extend Efl::FFIHelper
11
9
  #
12
10
  def self.method_missing m, *args, &block
13
11
  sym = 'eina_list_'+m.to_s
14
- raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym
15
- self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end"
16
- self.send sym, *args, &block
12
+ raise NameError.new "#{self.name}.#{sym} (#{m})" if not Efl::Native.respond_to? sym
13
+ self.module_eval "def self.#{m} *args, █ r=Efl::Native.#{sym}(*args); yield r if block_given?; r; end"
14
+ self.send m, *args, &block
17
15
  end
18
16
  #
17
+ end
18
+ #
19
+ module Native
20
+ #
21
+ extend Efl::FFIHelper
22
+ #
19
23
  ffi_lib 'eina'
20
24
  #
21
25
  # ENUMS
@@ -6,16 +6,20 @@ require 'efl/ffi'
6
6
  module Efl
7
7
  #
8
8
  module Eina
9
- #
10
- extend Efl::FFIHelper
11
9
  #
12
10
  def self.method_missing m, *args, &block
13
11
  sym = 'eina_'+m.to_s
14
- raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym
15
- self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end"
16
- self.send sym, *args, &block
12
+ raise NameError.new "#{self.name}.#{sym} (#{m})" if not Efl::Native.respond_to? sym
13
+ self.module_eval "def self.#{m} *args, █ r=Efl::Native.#{sym}(*args); yield r if block_given?; r; end"
14
+ self.send m, *args, &block
17
15
  end
18
16
  #
17
+ end
18
+ #
19
+ module Native
20
+ #
21
+ extend Efl::FFIHelper
22
+ #
19
23
  ffi_lib 'eina'
20
24
  #
21
25
  # ENUMS
@@ -6,16 +6,20 @@ require 'efl/ffi'
6
6
  module Efl
7
7
  #
8
8
  module Elm
9
- #
10
- extend Efl::FFIHelper
11
9
  #
12
10
  def self.method_missing m, *args, &block
13
11
  sym = 'elm_'+m.to_s
14
- raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym
15
- self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end"
16
- self.send sym, *args, &block
12
+ raise NameError.new "#{self.name}.#{sym} (#{m})" if not Efl::Native.respond_to? sym
13
+ self.module_eval "def self.#{m} *args, █ r=Efl::Native.#{sym}(*args); yield r if block_given?; r; end"
14
+ self.send m, *args, &block
17
15
  end
18
16
  #
17
+ end
18
+ #
19
+ module Native
20
+ #
21
+ extend Efl::FFIHelper
22
+ #
19
23
  ffi_lib 'libelementary-ver-pre-svn-09.so.0'
20
24
  #
21
25
  # ENUMS
@@ -31,6 +35,8 @@ module Efl
31
35
  # typedef enum _Elm_Text_Format {...} Elm_Text_Format;
32
36
  enum :elm_text_format, [ :elm_text_format_plain_utf8, :elm_text_format_markup_utf8 ]
33
37
  typedef :pointer, :elm_text_format_p
38
+ # typedef enum _Elm_Wrap_Type {...} Elm_Wrap_Type;
39
+ enum :elm_wrap_type, [ :elm_wrap_none, 0, :elm_wrap_char, :elm_wrap_word, :elm_wrap_mixed, :elm_wrap_last ]
34
40
  # typedef enum _Elm_Win_Type {...} Elm_Win_Type;
35
41
  enum :elm_win_type, [ :elm_win_basic, :elm_win_dialog_basic, :elm_win_desktop, :elm_win_dock, :elm_win_toolbar, :elm_win_menu,
36
42
  :elm_win_utility, :elm_win_splash, :elm_win_dropdown_menu, :elm_win_popup_menu, :elm_win_tooltip, :elm_win_notification, :elm_win_combo, :elm_win_dnd,
@@ -84,18 +90,11 @@ module Efl
84
90
  :elm_photocam_zoom_mode_last ]
85
91
  # typedef enum _Elm_Map_Zoom_Mode {...} Elm_Map_Zoom_Mode;
86
92
  enum :elm_map_zoom_mode, [ :elm_map_zoom_mode_manual, :elm_map_zoom_mode_auto_fit, :elm_map_zoom_mode_auto_fill, :elm_map_zoom_mode_last ]
87
- # typedef enum _Elm_Map_Sources {...} Elm_Map_Sources;
88
- enum :elm_map_sources, [ :elm_map_source_mapnik, :elm_map_source_osmarender, :elm_map_source_cyclemap, :elm_map_source_maplint,
89
- :elm_map_source_custom_1, :elm_map_source_custom_2, :elm_map_source_custom_3, :elm_map_source_custom_4, :elm_map_source_custom_5,
90
- :elm_map_source_custom_6, :elm_map_source_module, :elm_map_source_last ]
91
93
  # typedef enum _Elm_Map_Route_Sources {...} Elm_Map_Route_Sources;
92
- enum :elm_map_route_sources, [ :elm_map_route_source_yours, :elm_map_route_source_monav, :elm_map_route_source_ors,
93
- :elm_map_route_source_custom_1, :elm_map_route_source_custom_2, :elm_map_route_source_custom_3, :elm_map_route_source_custom_4,
94
- :elm_map_route_source_custom_5, :elm_map_route_source_custom_6, :elm_map_route_source_module, :elm_map_route_source_last ]
94
+ enum :elm_map_route_sources, [ :elm_map_route_source_yours, :elm_map_route_source_monav, :elm_map_route_source_ors, :elm_map_route_source_last
95
+ ]
95
96
  # typedef enum _Elm_Map_Name_Sources {...} Elm_Map_Name_Sources;
96
- enum :elm_map_name_sources, [ :elm_map_name_source_nominatim, :elm_map_name_source_custom_1, :elm_map_name_source_custom_2,
97
- :elm_map_name_source_custom_3, :elm_map_name_source_custom_4, :elm_map_name_source_custom_5, :elm_map_name_source_custom_6,
98
- :elm_map_name_source_module, :elm_map_name_source_last ]
97
+ enum :elm_map_name_sources, [ :elm_map_name_source_nominatim, :elm_map_name_source_last ]
99
98
  # typedef enum _Elm_Map_Route_Type {...} Elm_Map_Route_Type;
100
99
  enum :elm_map_route_type, [ :elm_map_route_type_motocar, :elm_map_route_type_bicycle, :elm_map_route_type_foot, :elm_map_route_type_last ]
101
100
  # typedef enum _Elm_Map_Route_Method {...} Elm_Map_Route_Method;
@@ -299,12 +298,24 @@ module Efl
299
298
  callback :elmmapmarkericongetfunc, [ :evas_object_p, :elm_map_marker_p, :void_p ], :evas_object_p
300
299
  # typedef Evas_Object *(*ElmMapGroupIconGetFunc) (Evas_Object *obj, void *data);
301
300
  callback :elmmapgroupicongetfunc, [ :evas_object_p, :void_p ], :evas_object_p
302
- # typedef char *(*ElmMapSourceURLFunc) (Evas_Object *obj, int x, int y, int zoom);
303
- callback :elmmapsourceurlfunc, [ :evas_object_p, :int, :int, :int ], :string
304
- # typedef char *(*ElmMapRouteSourceURLFunc) (Evas_Object *obj, char *type_name, int method, double flon, double flat, double tlon, double tlat);
305
- callback :elmmaproutesourceurlfunc, [ :evas_object_p, :string, :int, :double, :double, :double, :double ], :string
306
- # typedef char *(*ElmMapNameSourceURLFunc) (Evas_Object *obj, int method, char *name, double lon, double lat);
307
- callback :elmmapnamesourceurlfunc, [ :evas_object_p, :int, :string, :double, :double ], :string
301
+ # typedef char *(*ElmMapModuleSourceFunc) (void);
302
+ callback :elmmapmodulesourcefunc, [ ], :string
303
+ # typedef int (*ElmMapModuleZoomMinFunc) (void);
304
+ callback :elmmapmodulezoomminfunc, [ ], :int
305
+ # typedef int (*ElmMapModuleZoomMaxFunc) (void);
306
+ callback :elmmapmodulezoommaxfunc, [ ], :int
307
+ # typedef char *(*ElmMapModuleUrlFunc) (Evas_Object *obj, int x, int y, int zoom);
308
+ callback :elmmapmoduleurlfunc, [ :evas_object_p, :int, :int, :int ], :string
309
+ # typedef int (*ElmMapModuleRouteSourceFunc) (void);
310
+ callback :elmmapmoduleroutesourcefunc, [ ], :int
311
+ # typedef char *(*ElmMapModuleRouteUrlFunc) (Evas_Object *obj, char *type_name, int method, double flon, double flat, double tlon, double tlat);
312
+ callback :elmmapmodulerouteurlfunc, [ :evas_object_p, :string, :int, :double, :double, :double, :double ], :string
313
+ # typedef char *(*ElmMapModuleNameUrlFunc) (Evas_Object *obj, int method, char *name, double lon, double lat);
314
+ callback :elmmapmodulenameurlfunc, [ :evas_object_p, :int, :string, :double, :double ], :string
315
+ # typedef Eina_Bool (*ElmMapModuleGeoIntoCoordFunc) (const Evas_Object *obj, int zoom, double lon, double lat, int size, int *x, int *y);
316
+ callback :elmmapmodulegeointocoordfunc, [ :evas_object_p, :int, :double, :double, :int, :int_p, :int_p ], :eina_bool
317
+ # typedef Eina_Bool (*ElmMapModuleCoordIntoGeoFunc) (const Evas_Object *obj, int zoom, int x, int y, int size, double *lon, double *lat);
318
+ callback :elmmapmodulecoordintogeofunc, [ :evas_object_p, :int, :int, :int, :int, :double_p, :double_p ], :eina_bool
308
319
  # typedef void (*Elm_Animator_Operation_Cb) (void *data, Elm_Animator *animator, double frame);
309
320
  callback :elm_animator_operation_cb, [ :void_p, :elm_animator_p, :double ], :void
310
321
  # typedef void (*Elm_Animator_Completion_Cb) (void *data);
@@ -912,10 +923,10 @@ module Efl
912
923
  [ :elm_box_horizontal_set, [ :evas_object_p, :eina_bool ], :void ],
913
924
  # EAPI Eina_Bool elm_box_horizontal_get(const Evas_Object *obj);
914
925
  [ :elm_box_horizontal_get, [ :evas_object_p ], :eina_bool ],
915
- # EAPI void elm_box_homogenous_set(Evas_Object *obj, Eina_Bool homogenous);
916
- [ :elm_box_homogenous_set, [ :evas_object_p, :eina_bool ], :void ],
917
- # EAPI Eina_Bool elm_box_homogenous_get(const Evas_Object *obj);
918
- [ :elm_box_homogenous_get, [ :evas_object_p ], :eina_bool ],
926
+ # EAPI void elm_box_homogeneous_set(Evas_Object *obj, Eina_Bool homogeneous);
927
+ [ :elm_box_homogeneous_set, [ :evas_object_p, :eina_bool ], :void ],
928
+ # EAPI Eina_Bool elm_box_homogeneous_get(const Evas_Object *obj);
929
+ [ :elm_box_homogeneous_get, [ :evas_object_p ], :eina_bool ],
919
930
  # EAPI void elm_box_pack_start(Evas_Object *obj, Evas_Object *subobj);
920
931
  [ :elm_box_pack_start, [ :evas_object_p, :evas_object_p ], :void ],
921
932
  # EAPI void elm_box_pack_end(Evas_Object *obj, Evas_Object *subobj);
@@ -1098,10 +1109,10 @@ module Efl
1098
1109
  [ :elm_label_label_set, [ :evas_object_p, :string ], :void ],
1099
1110
  # EAPI const char *elm_label_label_get(const Evas_Object *obj);
1100
1111
  [ :elm_label_label_get, [ :evas_object_p ], :string ],
1101
- # EAPI void elm_label_line_wrap_set(Evas_Object *obj, Eina_Bool wrap);
1102
- [ :elm_label_line_wrap_set, [ :evas_object_p, :eina_bool ], :void ],
1103
- # EAPI Eina_Bool elm_label_line_wrap_get(const Evas_Object *obj);
1104
- [ :elm_label_line_wrap_get, [ :evas_object_p ], :eina_bool ],
1112
+ # EAPI void elm_label_line_wrap_set(Evas_Object *obj, Elm_Wrap_Type wrap);
1113
+ [ :elm_label_line_wrap_set, [ :evas_object_p, :elm_wrap_type ], :void ],
1114
+ # EAPI Elm_Wrap_Type elm_label_line_wrap_get(const Evas_Object *obj);
1115
+ [ :elm_label_line_wrap_get, [ :evas_object_p ], :elm_wrap_type ],
1105
1116
  # EAPI void elm_label_wrap_width_set(Evas_Object *obj, Evas_Coord w);
1106
1117
  [ :elm_label_wrap_width_set, [ :evas_object_p, :int ], :void ],
1107
1118
  # EAPI Evas_Coord elm_label_wrap_width_get(const Evas_Object *obj);
@@ -1160,10 +1171,10 @@ module Efl
1160
1171
  [ :elm_frame_content_unset, [ :evas_object_p ], :evas_object_p ],
1161
1172
  # EAPI Evas_Object *elm_table_add(Evas_Object *parent);
1162
1173
  [ :elm_table_add, [ :evas_object_p ], :evas_object_p ],
1163
- # EAPI void elm_table_homogenous_set(Evas_Object *obj, Eina_Bool homogenous);
1164
- [ :elm_table_homogenous_set, [ :evas_object_p, :eina_bool ], :void ],
1165
- # EAPI Eina_Bool elm_table_homogenous_get(const Evas_Object *obj);
1166
- [ :elm_table_homogenous_get, [ :evas_object_p ], :eina_bool ],
1174
+ # EAPI void elm_table_homogeneous_set(Evas_Object *obj, Eina_Bool homogeneous);
1175
+ [ :elm_table_homogeneous_set, [ :evas_object_p, :eina_bool ], :void ],
1176
+ # EAPI Eina_Bool elm_table_homogeneous_get(const Evas_Object *obj);
1177
+ [ :elm_table_homogeneous_get, [ :evas_object_p ], :eina_bool ],
1167
1178
  # EAPI void elm_table_padding_set(Evas_Object *obj, Evas_Coord horizontal, Evas_Coord vertical);
1168
1179
  [ :elm_table_padding_set, [ :evas_object_p, :int, :int ], :void ],
1169
1180
  # EAPI void elm_table_padding_get(const Evas_Object *obj, Evas_Coord *horizontal, Evas_Coord *vertical);
@@ -1318,7 +1329,7 @@ module Efl
1318
1329
  [ :elm_layout_theme_set, [ :evas_object_p, :string, :string, :string ], :eina_bool ],
1319
1330
  # EAPI void elm_layout_content_set(Evas_Object *obj, const char *swallow, Evas_Object *content);
1320
1331
  [ :elm_layout_content_set, [ :evas_object_p, :string, :evas_object_p ], :void ],
1321
- # EAPI const Evas_Object *elm_layout_content_get(const Evas_Object *obj, const char *swallow);
1332
+ # EAPI Evas_Object *elm_layout_content_get(const Evas_Object *obj, const char *swallow);
1322
1333
  [ :elm_layout_content_get, [ :evas_object_p, :string ], :evas_object_p ],
1323
1334
  # EAPI Evas_Object *elm_layout_content_unset(Evas_Object *obj, const char *swallow);
1324
1335
  [ :elm_layout_content_unset, [ :evas_object_p, :string ], :evas_object_p ],
@@ -1426,10 +1437,8 @@ module Efl
1426
1437
  [ :elm_entry_selection_get, [ :evas_object_p ], :string ],
1427
1438
  # EAPI void elm_entry_entry_insert(Evas_Object *obj, const char *entry);
1428
1439
  [ :elm_entry_entry_insert, [ :evas_object_p, :string ], :void ],
1429
- # EAPI void elm_entry_line_wrap_set(Evas_Object *obj, Eina_Bool wrap);
1430
- [ :elm_entry_line_wrap_set, [ :evas_object_p, :eina_bool ], :void ],
1431
- # EAPI void elm_entry_line_char_wrap_set(Evas_Object *obj, Eina_Bool wrap);
1432
- [ :elm_entry_line_char_wrap_set, [ :evas_object_p, :eina_bool ], :void ],
1440
+ # EAPI void elm_entry_line_wrap_set(Evas_Object *obj, Elm_Wrap_Type wrap);
1441
+ [ :elm_entry_line_wrap_set, [ :evas_object_p, :elm_wrap_type ], :void ],
1433
1442
  # EAPI void elm_entry_editable_set(Evas_Object *obj, Eina_Bool editable);
1434
1443
  [ :elm_entry_editable_set, [ :evas_object_p, :eina_bool ], :void ],
1435
1444
  # EAPI Eina_Bool elm_entry_editable_get(const Evas_Object *obj);
@@ -1740,10 +1749,10 @@ module Efl
1740
1749
  [ :elm_toolbar_mode_shrink_set, [ :evas_object_p, :elm_toolbar_shrink_mode ], :void ],
1741
1750
  # EAPI Elm_Toolbar_Shrink_Mode elm_toolbar_mode_shrink_get(const Evas_Object *obj);
1742
1751
  [ :elm_toolbar_mode_shrink_get, [ :evas_object_p ], :elm_toolbar_shrink_mode ],
1743
- # EAPI void elm_toolbar_homogenous_set(Evas_Object *obj, Eina_Bool homogenous);
1744
- [ :elm_toolbar_homogenous_set, [ :evas_object_p, :eina_bool ], :void ],
1745
- # EAPI Eina_Bool elm_toolbar_homogenous_get(const Evas_Object *obj);
1746
- [ :elm_toolbar_homogenous_get, [ :evas_object_p ], :eina_bool ],
1752
+ # EAPI void elm_toolbar_homogeneous_set(Evas_Object *obj, Eina_Bool homogeneous);
1753
+ [ :elm_toolbar_homogeneous_set, [ :evas_object_p, :eina_bool ], :void ],
1754
+ # EAPI Eina_Bool elm_toolbar_homogeneous_get(const Evas_Object *obj);
1755
+ [ :elm_toolbar_homogeneous_get, [ :evas_object_p ], :eina_bool ],
1747
1756
  # EAPI void elm_toolbar_menu_parent_set(Evas_Object *obj, Evas_Object *parent);
1748
1757
  [ :elm_toolbar_menu_parent_set, [ :evas_object_p, :evas_object_p ], :void ],
1749
1758
  # EAPI Evas_Object *elm_toolbar_menu_parent_get(const Evas_Object *obj);
@@ -2585,26 +2594,23 @@ module Efl
2585
2594
  [ :elm_map_marker_class_get_cb_set, [ :elm_map_marker_class_p, :elmmapmarkergetfunc ], :void ],
2586
2595
  # EAPI void elm_map_marker_class_del_cb_set(Elm_Map_Marker_Class *clas, ElmMapMarkerDelFunc del);
2587
2596
  [ :elm_map_marker_class_del_cb_set, [ :elm_map_marker_class_p, :elmmapmarkerdelfunc ], :void ],
2588
- # EAPI void elm_map_source_set(Evas_Object *obj, Elm_Map_Sources source);
2589
- [ :elm_map_source_set, [ :evas_object_p, :elm_map_sources ], :void ],
2597
+ # EAPI const char **elm_map_source_names_get(const Evas_Object *obj);
2598
+ [ :elm_map_source_names_get, [ :evas_object_p ], :string_array ],
2599
+ # EAPI void elm_map_source_name_set(Evas_Object *obj, const char *source_name);
2600
+ [ :elm_map_source_name_set, [ :evas_object_p, :string ], :void ],
2601
+ # EAPI const char *elm_map_source_name_get(const Evas_Object *obj);
2602
+ [ :elm_map_source_name_get, [ :evas_object_p ], :string ],
2590
2603
  # EAPI void elm_map_route_source_set(Evas_Object *obj, Elm_Map_Route_Sources source);
2591
2604
  [ :elm_map_route_source_set, [ :evas_object_p, :elm_map_route_sources ], :void ],
2592
- # EAPI Elm_Map_Sources elm_map_source_get(const Evas_Object *obj);
2593
- [ :elm_map_source_get, [ :evas_object_p ], :elm_map_sources ],
2594
2605
  # EAPI Elm_Map_Route_Sources elm_map_route_source_get(const Evas_Object *obj);
2595
2606
  [ :elm_map_route_source_get, [ :evas_object_p ], :elm_map_route_sources ],
2596
- # EAPI void elm_map_source_custom_api_set(Elm_Map_Sources source, const char *label, int zoom_min, int zoom_max, ElmMapSourceURLFunc url_cb, ElmMapRouteSourceURLFunc route_url_cb, ElmMapNameSourceURLFunc name_url_cb);
2597
- [ :elm_map_source_custom_api_set, [ :elm_map_sources, :string, :int, :int, :elmmapsourceurlfunc, :elmmaproutesourceurlfunc,
2598
- :elmmapnamesourceurlfunc ], :void ],
2599
- # EAPI int elm_map_source_zoom_min_get(Elm_Map_Sources source);
2600
- [ :elm_map_source_zoom_min_get, [ :elm_map_sources ], :int ],
2601
- # EAPI int elm_map_source_zoom_max_get(Elm_Map_Sources source);
2602
- [ :elm_map_source_zoom_max_get, [ :elm_map_sources ], :int ],
2603
- # EAPI const char *elm_map_source_name_get(Elm_Map_Sources source);
2604
- [ :elm_map_source_name_get, [ :elm_map_sources ], :string ],
2607
+ # EAPI int elm_map_source_zoom_min_get(const Evas_Object *obj);
2608
+ [ :elm_map_source_zoom_min_get, [ :evas_object_p ], :int ],
2609
+ # EAPI int elm_map_source_zoom_max_get(const Evas_Object *obj);
2610
+ [ :elm_map_source_zoom_max_get, [ :evas_object_p ], :int ],
2605
2611
  # EAPI void elm_map_user_agent_set(Evas_Object *obj, const char *user_agent);
2606
2612
  [ :elm_map_user_agent_set, [ :evas_object_p, :string ], :void ],
2607
- # EAPI const char *elm_map_user_agent_get(Evas_Object *obj);
2613
+ # EAPI const char *elm_map_user_agent_get(const Evas_Object *obj);
2608
2614
  [ :elm_map_user_agent_get, [ :evas_object_p ], :string ],
2609
2615
  # EAPI Elm_Map_Route *elm_map_route_add(Evas_Object *obj, Elm_Map_Route_Type type, Elm_Map_Route_Method method, double flon, double flat, double tlon, double tlat);
2610
2616
  [ :elm_map_route_add, [ :evas_object_p, :elm_map_route_type, :elm_map_route_method, :double, :double, :double, :double ], :elm_map_route_p ],
@@ -2612,17 +2618,17 @@ module Efl
2612
2618
  [ :elm_map_route_remove, [ :elm_map_route_p ], :void ],
2613
2619
  # EAPI void elm_map_route_color_set(Elm_Map_Route *route, int r, int g , int b, int a);
2614
2620
  [ :elm_map_route_color_set, [ :elm_map_route_p, :int, :int, :int, :int ], :void ],
2615
- # EAPI void elm_map_route_color_get(Elm_Map_Route *route, int *r, int *g , int *b, int *a);
2621
+ # EAPI void elm_map_route_color_get(const Elm_Map_Route *route, int *r, int *g , int *b, int *a);
2616
2622
  [ :elm_map_route_color_get, [ :elm_map_route_p, :int_p, :int_p, :int_p, :int_p ], :void ],
2617
- # EAPI double elm_map_route_distance_get(Elm_Map_Route *route);
2623
+ # EAPI double elm_map_route_distance_get(const Elm_Map_Route *route);
2618
2624
  [ :elm_map_route_distance_get, [ :elm_map_route_p ], :double ],
2619
- # EAPI const char *elm_map_route_node_get(Elm_Map_Route *route);
2625
+ # EAPI const char *elm_map_route_node_get(const Elm_Map_Route *route);
2620
2626
  [ :elm_map_route_node_get, [ :elm_map_route_p ], :string ],
2621
- # EAPI const char *elm_map_route_waypoint_get(Elm_Map_Route *route);
2627
+ # EAPI const char *elm_map_route_waypoint_get(const Elm_Map_Route *route);
2622
2628
  [ :elm_map_route_waypoint_get, [ :elm_map_route_p ], :string ],
2623
- # EAPI const char *elm_map_name_address_get(Elm_Map_Name *name);
2629
+ # EAPI const char *elm_map_name_address_get(const Elm_Map_Name *name);
2624
2630
  [ :elm_map_name_address_get, [ :elm_map_name_p ], :string ],
2625
- # EAPI void elm_map_name_region_get(Elm_Map_Name *name, double *lon, double *lat);
2631
+ # EAPI void elm_map_name_region_get(const Elm_Map_Name *name, double *lon, double *lat);
2626
2632
  [ :elm_map_name_region_get, [ :elm_map_name_p, :double_p, :double_p ], :void ],
2627
2633
  # EAPI void elm_map_name_remove(Elm_Map_Name *name);
2628
2634
  [ :elm_map_name_remove, [ :elm_map_name_p ], :void ],
@@ -2714,10 +2720,8 @@ module Efl
2714
2720
  [ :elm_scrolled_entry_selection_get, [ :evas_object_p ], :string ],
2715
2721
  # EAPI void elm_scrolled_entry_entry_insert(Evas_Object *obj, const char *entry);
2716
2722
  [ :elm_scrolled_entry_entry_insert, [ :evas_object_p, :string ], :void ],
2717
- # EAPI void elm_scrolled_entry_line_wrap_set(Evas_Object *obj, Eina_Bool wrap);
2718
- [ :elm_scrolled_entry_line_wrap_set, [ :evas_object_p, :eina_bool ], :void ],
2719
- # EAPI void elm_scrolled_entry_line_char_wrap_set(Evas_Object *obj, Eina_Bool wrap);
2720
- [ :elm_scrolled_entry_line_char_wrap_set, [ :evas_object_p, :eina_bool ], :void ],
2723
+ # EAPI void elm_scrolled_entry_line_wrap_set(Evas_Object *obj, Elm_Wrap_Type wrap);
2724
+ [ :elm_scrolled_entry_line_wrap_set, [ :evas_object_p, :elm_wrap_type ], :void ],
2721
2725
  # EAPI void elm_scrolled_entry_editable_set(Evas_Object *obj, Eina_Bool editable);
2722
2726
  [ :elm_scrolled_entry_editable_set, [ :evas_object_p, :eina_bool ], :void ],
2723
2727
  # EAPI Eina_Bool elm_scrolled_entry_editable_get(const Evas_Object *obj);
@@ -6,16 +6,20 @@ require 'efl/ffi'
6
6
  module Efl
7
7
  #
8
8
  module Evas
9
- #
10
- extend Efl::FFIHelper
11
9
  #
12
10
  def self.method_missing m, *args, &block
13
11
  sym = 'evas_'+m.to_s
14
- raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym
15
- self.module_eval "def self.#{m} *args, █ r=self.#{sym}(*args); yield r if block_given?; r; end"
16
- self.send sym, *args, &block
12
+ raise NameError.new "#{self.name}.#{sym} (#{m})" if not Efl::Native.respond_to? sym
13
+ self.module_eval "def self.#{m} *args, █ r=Efl::Native.#{sym}(*args); yield r if block_given?; r; end"
14
+ self.send m, *args, &block
17
15
  end
18
16
  #
17
+ end
18
+ #
19
+ module Native
20
+ #
21
+ extend Efl::FFIHelper
22
+ #
19
23
  ffi_lib 'evas'
20
24
  #
21
25
  # ENUMS
@@ -61,8 +65,8 @@ module Efl
61
65
  enum :evas_native_surface_type, [ :evas_native_surface_none, :evas_native_surface_x11, :evas_native_surface_opengl ]
62
66
  # typedef enum _Evas_Render_Op {...} Evas_Render_Op;
63
67
  enum :evas_render_op, [ :evas_render_blend, 0, :evas_render_blend_rel, 1, :evas_render_copy, 2, :evas_render_copy_rel, 3, :evas_render_add, 4,
64
- :evas_render_add_rel, 5, :evas_render_sub, 6, :evas_render_sub_rel, 7, :evas_render_tint, 8, :evas_render_tint_rel, 9, :evas_render_mask, 1,
65
- :evas_render_mul, 1 ]
68
+ :evas_render_add_rel, 5, :evas_render_sub, 6, :evas_render_sub_rel, 7, :evas_render_tint, 8, :evas_render_tint_rel, 9, :evas_render_mask, 10,
69
+ :evas_render_mul, 11 ]
66
70
  # typedef enum _Evas_Border_Fill_Mode {...} Evas_Border_Fill_Mode;
67
71
  enum :evas_border_fill_mode, [ :evas_border_fill_none, 0, :evas_border_fill_default, 1, :evas_border_fill_solid, 2 ]
68
72
  # typedef enum _Evas_Image_Scale_Hint {...} Evas_Image_Scale_Hint;
data/lib/efl/native.rb ADDED
@@ -0,0 +1,16 @@
1
+ #! /usr/bin/env ruby
2
+ # -*- coding: UTF-8 -*-
3
+ #
4
+ require 'efl/native/eet'
5
+ require 'efl/native/eina'
6
+ require 'efl/native/eina_hash'
7
+ require 'efl/native/eina_list'
8
+ require 'efl/native/evas'
9
+ require 'efl/native/ecore'
10
+ require 'efl/native/ecore_evas'
11
+ require 'efl/native/ecore_getopt'
12
+ require 'efl/native/ecore_input'
13
+ require 'efl/native/edje'
14
+ require 'efl/native/elementary'
15
+ #
16
+ # EOF
data/lib/efl.rb CHANGED
@@ -4,7 +4,7 @@
4
4
  #
5
5
  module Efl
6
6
  #
7
- VERSION = '0.0.3'
7
+ VERSION = '0.0.4'
8
8
  #
9
9
  autoload :EcoreEvas, './lib/efl/ecore_evas.rb'
10
10
  autoload :EcoreGetopt, './lib/efl/ecore_getopt.rb'