summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJérémy Zurcher <jeremy@asynk.ch>2012-02-28 12:33:16 +0100
committerJérémy Zurcher <jeremy@asynk.ch>2012-02-28 12:33:16 +0100
commit9a924c6c52e33721b37905a8761348792b70a34b (patch)
tree8787fae49a26fe4afba89cc59ac5b3cf2443b108
parentb79cc483a8a09f9589cf7b9ef31bc78d947f24ff (diff)
downloadffi-efl-9a924c6c52e33721b37905a8761348792b70a34b.zip
ffi-efl-9a924c6c52e33721b37905a8761348792b70a34b.tar.gz
parse elm_photo.h, generate elm_photo.rb
-rw-r--r--lib/efl/elementary_all.rb4
-rw-r--r--lib/efl/elm/elm_photo.rb22
-rw-r--r--lib/efl/elm/elm_photocam.rb22
-rw-r--r--lib/efl/native/elm/elm_photo.rb49
-rw-r--r--lib/efl/native/elm/elm_photocam.rb74
-rwxr-xr-xtools/genruby.rb4
6 files changed, 171 insertions, 4 deletions
diff --git a/lib/efl/elementary_all.rb b/lib/efl/elementary_all.rb
index 28297e0..b64ac7d 100644
--- a/lib/efl/elementary_all.rb
+++ b/lib/efl/elementary_all.rb
@@ -63,8 +63,8 @@ require 'efl/elm/elm_notify'
require 'efl/elm/elm_pager'
require 'efl/elm/elm_panel'
require 'efl/elm/elm_panes'
-#require 'efl/elm/elm_photocam'
-#require 'efl/elm/elm_photo'
+require 'efl/elm/elm_photocam'
+require 'efl/elm/elm_photo'
#require 'efl/elm/elm_plug'
require 'efl/elm/elm_progressbar'
require 'efl/elm/elm_radio'
diff --git a/lib/efl/elm/elm_photo.rb b/lib/efl/elm/elm_photo.rb
new file mode 100644
index 0000000..168df54
--- /dev/null
+++ b/lib/efl/elm/elm_photo.rb
@@ -0,0 +1,22 @@
+#! /usr/bin/env ruby
+# -*- coding: UTF-8 -*-
+#
+require 'efl/elm/elm_object'
+require 'efl/native/elm/elm_photo'
+#
+module Efl
+ #
+ module Elm
+ #
+ class ElmPhoto < ElmObject
+ #
+ include Helper
+ constructor :elm_photo_add
+ search_prefixes 'elm_photo_'
+ #
+ end
+ #
+ end
+end
+#
+# EOF
diff --git a/lib/efl/elm/elm_photocam.rb b/lib/efl/elm/elm_photocam.rb
new file mode 100644
index 0000000..92ea9e2
--- /dev/null
+++ b/lib/efl/elm/elm_photocam.rb
@@ -0,0 +1,22 @@
+#! /usr/bin/env ruby
+# -*- coding: UTF-8 -*-
+#
+require 'efl/elm/elm_object'
+require 'efl/native/elm/elm_photocam'
+#
+module Efl
+ #
+ module Elm
+ #
+ class ElmPhotoCam < ElmObject
+ #
+ include Helper
+ constructor :elm_photocam_add
+ search_prefixes 'elm_photocam_'
+ #
+ end
+ #
+ end
+end
+#
+# EOF
diff --git a/lib/efl/native/elm/elm_photo.rb b/lib/efl/native/elm/elm_photo.rb
new file mode 100644
index 0000000..7eb7546
--- /dev/null
+++ b/lib/efl/native/elm/elm_photo.rb
@@ -0,0 +1,49 @@
+#! /usr/bin/env ruby
+# -*- coding: UTF-8 -*-
+#
+require 'efl/native'
+require 'efl/native/elementary'
+#
+module Efl
+ #
+ module ElmPhoto
+ #
+ FCT_PREFIX = 'elm_photo_' unless const_defined? :FCT_PREFIX
+ #
+ def self.method_missing meth, *args, &block
+ sym = Efl::MethodResolver.resolve self, meth, FCT_PREFIX
+ self.send sym, *args, &block
+ end
+ #
+ end
+ #
+ module Native
+ #
+ ffi_lib 'elementary-ver-pre-svn-09.so.0'
+ #
+ # FUNCTIONS
+ fcts = [
+ # EAPI Evas_Object *elm_photo_add(Evas_Object *parent);
+ [ :elm_photo_add, [ :evas_object ], :evas_object ],
+ # EAPI Eina_Bool elm_photo_file_set(Evas_Object *obj, const char *file);
+ [ :elm_photo_file_set, [ :evas_object, :string ], :bool ],
+ # EAPI void elm_photo_thumb_set(const Evas_Object *obj, const char *file, const char *group);
+ [ :elm_photo_thumb_set, [ :evas_object, :string, :string ], :void ],
+ # EAPI void elm_photo_size_set(Evas_Object *obj, int size);
+ [ :elm_photo_size_set, [ :evas_object, :int ], :void ],
+ # EAPI void elm_photo_fill_inside_set(Evas_Object *obj, Eina_Bool fill);
+ [ :elm_photo_fill_inside_set, [ :evas_object, :bool ], :void ],
+ # EAPI void elm_photo_editable_set(Evas_Object *obj, Eina_Bool set);
+ [ :elm_photo_editable_set, [ :evas_object, :bool ], :void ],
+ # EAPI void elm_photo_aspect_fixed_set(Evas_Object *obj, Eina_Bool fixed);
+ [ :elm_photo_aspect_fixed_set, [ :evas_object, :bool ], :void ],
+ # EAPI Eina_Bool elm_photo_aspect_fixed_get(const Evas_Object *obj);
+ [ :elm_photo_aspect_fixed_get, [ :evas_object ], :bool ],
+ ]
+ #
+ attach_fcts fcts
+ #
+ end
+end
+#
+# EOF
diff --git a/lib/efl/native/elm/elm_photocam.rb b/lib/efl/native/elm/elm_photocam.rb
new file mode 100644
index 0000000..e553746
--- /dev/null
+++ b/lib/efl/native/elm/elm_photocam.rb
@@ -0,0 +1,74 @@
+#! /usr/bin/env ruby
+# -*- coding: UTF-8 -*-
+#
+require 'efl/native'
+require 'efl/native/elementary'
+#
+module Efl
+ #
+ module ElmPhotoCam
+ #
+ FCT_PREFIX = 'elm_photocam_' unless const_defined? :FCT_PREFIX
+ #
+ def self.method_missing meth, *args, &block
+ sym = Efl::MethodResolver.resolve self, meth, FCT_PREFIX
+ self.send sym, *args, &block
+ end
+ #
+ end
+ #
+ module Native
+ #
+ ffi_lib 'elementary-ver-pre-svn-09.so.0'
+ #
+ # ENUMS
+ # typedef enum {...} Elm_Photocam_Zoom_Mode;
+ enum :elm_photocam_zoom_mode, [ :elm_photocam_zoom_mode_manual, 0, :elm_photocam_zoom_mode_auto_fit, 1, :elm_photocam_zoom_mode_auto_fill, 2,
+ :elm_photocam_zoom_mode_auto_fit_in, 3, :elm_photocam_zoom_mode_last, 4 ]
+ #
+ # FUNCTIONS
+ fcts = [
+ # EAPI Evas_Object *elm_photocam_add(Evas_Object *parent);
+ [ :elm_photocam_add, [ :evas_object ], :evas_object ],
+ # EAPI Evas_Load_Error elm_photocam_file_set(Evas_Object *obj, const char *file);
+ [ :elm_photocam_file_set, [ :evas_object, :string ], :evas_load_error ],
+ # EAPI const char *elm_photocam_file_get(const Evas_Object *obj);
+ [ :elm_photocam_file_get, [ :evas_object ], :string ],
+ # EAPI void elm_photocam_zoom_set(Evas_Object *obj, double zoom);
+ [ :elm_photocam_zoom_set, [ :evas_object, :double ], :void ],
+ # EAPI double elm_photocam_zoom_get(const Evas_Object *obj);
+ [ :elm_photocam_zoom_get, [ :evas_object ], :double ],
+ # EAPI void elm_photocam_zoom_mode_set(Evas_Object *obj, Elm_Photocam_Zoom_Mode mode);
+ [ :elm_photocam_zoom_mode_set, [ :evas_object, :elm_photocam_zoom_mode ], :void ],
+ # EAPI Elm_Photocam_Zoom_Mode elm_photocam_zoom_mode_get(const Evas_Object *obj);
+ [ :elm_photocam_zoom_mode_get, [ :evas_object ], :elm_photocam_zoom_mode ],
+ # EAPI void elm_photocam_image_size_get(const Evas_Object *obj, int *w, int *h);
+ [ :elm_photocam_image_size_get, [ :evas_object, :pointer, :pointer ], :void ],
+ # EAPI void elm_photocam_image_region_get(const Evas_Object *obj, int *x, int *y, int *w, int *h);
+ [ :elm_photocam_image_region_get, [ :evas_object, :pointer, :pointer, :pointer, :pointer ], :void ],
+ # EAPI void elm_photocam_image_region_show(Evas_Object *obj, int x, int y, int w, int h);
+ [ :elm_photocam_image_region_show, [ :evas_object, :int, :int, :int, :int ], :void ],
+ # EAPI void elm_photocam_image_region_bring_in(Evas_Object *obj, int x, int y, int w, int h);
+ [ :elm_photocam_image_region_bring_in, [ :evas_object, :int, :int, :int, :int ], :void ],
+ # EAPI void elm_photocam_paused_set(Evas_Object *obj, Eina_Bool paused);
+ [ :elm_photocam_paused_set, [ :evas_object, :bool ], :void ],
+ # EAPI Eina_Bool elm_photocam_paused_get(const Evas_Object *obj);
+ [ :elm_photocam_paused_get, [ :evas_object ], :bool ],
+ # EAPI Evas_Object *elm_photocam_internal_image_get(const Evas_Object *obj);
+ [ :elm_photocam_internal_image_get, [ :evas_object ], :evas_object ],
+ # EAPI void elm_photocam_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce);
+ [ :elm_photocam_bounce_set, [ :evas_object, :bool, :bool ], :void ],
+ # EAPI void elm_photocam_bounce_get(const Evas_Object *obj, Eina_Bool *h_bounce, Eina_Bool *v_bounce);
+ [ :elm_photocam_bounce_get, [ :evas_object, :pointer, :pointer ], :void ],
+ # EAPI void elm_photocam_gesture_set(Evas_Object *obj, Eina_Bool gesture);
+ # FIXME
+ # EAPI Eina_Bool elm_photocam_gesture_get(const Evas_Object *obj);
+ # FIXME
+ ]
+ #
+ attach_fcts fcts
+ #
+ end
+end
+#
+# EOF
diff --git a/tools/genruby.rb b/tools/genruby.rb
index 4a03459..e6b66b8 100755
--- a/tools/genruby.rb
+++ b/tools/genruby.rb
@@ -420,8 +420,8 @@ libs << elm_h('elm_pager.h', 'ElmPager')
libs << elm_h('elm_panel.h', 'ElmPanel')
libs << elm_h('elm_panes.h', 'ElmPanes')
libs << elm_h('elm_password.h', 'ElmPassword')
-#libs << elm_h('elm_photocam.h', 'ElmX')
-#libs << elm_h('elm_photo.h', 'ElmX')
+libs << elm_h('elm_photocam.h', 'ElmPhotoCam')
+libs << elm_h('elm_photo.h', 'ElmPhoto')
#libs << elm_h('elm_plug.h', 'ElmX')
libs << elm_h('elm_progressbar.h', 'ElmProgressBar')
libs << elm_h('elm_radio.h', 'ElmRadio')