summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJérémy Zurcher <jeremy@asynk.ch>2012-02-27 15:09:12 +0100
committerJérémy Zurcher <jeremy@asynk.ch>2012-02-27 15:09:12 +0100
commit8af4c2366a9685c06f3114203cb21da42de6b53f (patch)
tree3b2e2b0fab5f9abd0b353b334b279ecc22b0c9af
parent41f77c375f4bfcc6395425aa86158bdad93108ad (diff)
downloadffi-efl-8af4c2366a9685c06f3114203cb21da42de6b53f.zip
ffi-efl-8af4c2366a9685c06f3114203cb21da42de6b53f.tar.gz
parse elm_image.h, generate elm_image.rb
-rw-r--r--lib/efl/elm/elm_image.rb22
-rw-r--r--lib/efl/native/elm/elm_image.rb80
-rwxr-xr-xtools/extract-api.sh1
-rwxr-xr-xtools/genruby.rb5
4 files changed, 108 insertions, 0 deletions
diff --git a/lib/efl/elm/elm_image.rb b/lib/efl/elm/elm_image.rb
new file mode 100644
index 0000000..6a37ee9
--- /dev/null
+++ b/lib/efl/elm/elm_image.rb
@@ -0,0 +1,22 @@
+#! /usr/bin/env ruby
+# -*- coding: UTF-8 -*-
+#
+require 'efl/elm/elm_object'
+require 'efl/native/elm/elm_image'
+#
+module Efl
+ #
+ module Elm
+ #
+ class ElmImage < ElmObject
+ #
+ include Helper
+ constructor :elm_image_add
+ search_prefixes 'elm_image_'
+ #
+ end
+ #
+ end
+end
+#
+# EOF
diff --git a/lib/efl/native/elm/elm_image.rb b/lib/efl/native/elm/elm_image.rb
new file mode 100644
index 0000000..356c5dd
--- /dev/null
+++ b/lib/efl/native/elm/elm_image.rb
@@ -0,0 +1,80 @@
+#! /usr/bin/env ruby
+# -*- coding: UTF-8 -*-
+#
+require 'efl/native'
+require 'efl/native/elementary'
+#
+module Efl
+ #
+ module ElmImage
+ #
+ FCT_PREFIX = 'elm_image_' 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_Image_Orient;
+ enum :elm_image_orient, [ :elm_image_orient_none, 0, :elm_image_orient_0, 0, :elm_image_rotate_90, 1, :elm_image_rotate_180, 2,
+ :elm_image_rotate_270, 3, :elm_image_flip_horizontal, 4, :elm_image_flip_vertical, 5, :elm_image_flip_transpose, 6, :elm_image_flip_transverse, 7 ]
+ #
+ # FUNCTIONS
+ fcts = [
+ # EAPI Evas_Object *elm_image_add(Evas_Object *parent);
+ [ :elm_image_add, [ :evas_object ], :evas_object ],
+ # EAPI Eina_Bool elm_image_file_set(Evas_Object *obj, const char *file, const char *group);
+ [ :elm_image_file_set, [ :evas_object, :string, :string ], :bool ],
+ # EAPI void elm_image_file_get(const Evas_Object *obj, const char **file, const char **group);
+ [ :elm_image_file_get, [ :evas_object, :pointer, :pointer ], :void ],
+ # EAPI void elm_image_smooth_set(Evas_Object *obj, Eina_Bool smooth);
+ [ :elm_image_smooth_set, [ :evas_object, :bool ], :void ],
+ # EAPI Eina_Bool elm_image_smooth_get(const Evas_Object *obj);
+ [ :elm_image_smooth_get, [ :evas_object ], :bool ],
+ # EAPI void elm_image_object_size_get(const Evas_Object *obj, int *w, int *h);
+ [ :elm_image_object_size_get, [ :evas_object, :pointer, :pointer ], :void ],
+ # EAPI void elm_image_no_scale_set(Evas_Object *obj, Eina_Bool no_scale);
+ [ :elm_image_no_scale_set, [ :evas_object, :bool ], :void ],
+ # EAPI Eina_Bool elm_image_no_scale_get(const Evas_Object *obj);
+ [ :elm_image_no_scale_get, [ :evas_object ], :bool ],
+ # EAPI void elm_image_scale_set(Evas_Object *obj, Eina_Bool scale_up, Eina_Bool scale_down);
+ [ :elm_image_scale_set, [ :evas_object, :bool, :bool ], :void ],
+ # EAPI void elm_image_scale_get(const Evas_Object *obj, Eina_Bool *scale_up, Eina_Bool *scale_down);
+ [ :elm_image_scale_get, [ :evas_object, :pointer, :pointer ], :void ],
+ # EAPI void elm_image_fill_outside_set(Evas_Object *obj, Eina_Bool fill_outside);
+ [ :elm_image_fill_outside_set, [ :evas_object, :bool ], :void ],
+ # EAPI Eina_Bool elm_image_fill_outside_get(const Evas_Object *obj);
+ [ :elm_image_fill_outside_get, [ :evas_object ], :bool ],
+ # EAPI void elm_image_prescale_set(Evas_Object *obj, int size);
+ [ :elm_image_prescale_set, [ :evas_object, :int ], :void ],
+ # EAPI int elm_image_prescale_get(const Evas_Object *obj);
+ [ :elm_image_prescale_get, [ :evas_object ], :int ],
+ # EAPI void elm_image_orient_set(Evas_Object *obj, Elm_Image_Orient orient);
+ [ :elm_image_orient_set, [ :evas_object, :elm_image_orient ], :void ],
+ # EAPI Elm_Image_Orient elm_image_orient_get(const Evas_Object *obj);
+ [ :elm_image_orient_get, [ :evas_object ], :elm_image_orient ],
+ # EAPI void elm_image_editable_set(Evas_Object *obj, Eina_Bool set);
+ [ :elm_image_editable_set, [ :evas_object, :bool ], :void ],
+ # EAPI Eina_Bool elm_image_editable_get(const Evas_Object *obj);
+ [ :elm_image_editable_get, [ :evas_object ], :bool ],
+ # EAPI Evas_Object *elm_image_object_get(const Evas_Object *obj);
+ [ :elm_image_object_get, [ :evas_object ], :evas_object ],
+ # EAPI void elm_image_aspect_fixed_set(Evas_Object *obj, Eina_Bool fixed);
+ [ :elm_image_aspect_fixed_set, [ :evas_object, :bool ], :void ],
+ # EAPI Eina_Bool elm_image_aspect_fixed_get(const Evas_Object *obj);
+ [ :elm_image_aspect_fixed_get, [ :evas_object ], :bool ],
+ ]
+ #
+ attach_fcts fcts
+ #
+ end
+end
+#
+# EOF
diff --git a/tools/extract-api.sh b/tools/extract-api.sh
index ce754e3..4c50504 100755
--- a/tools/extract-api.sh
+++ b/tools/extract-api.sh
@@ -58,6 +58,7 @@ for header in \
"${INCLUDE}/elementary-0/elm_button.h" \
"${INCLUDE}/elementary-0/elm_frame.h" \
"${INCLUDE}/elementary-0/elm_panel.h" \
+ "${INCLUDE}/elementary-0/elm_image.h" \
; do
#
if [ ! -e "$header" ]; then
diff --git a/tools/genruby.rb b/tools/genruby.rb
index 1be9b57..e963dfa 100755
--- a/tools/genruby.rb
+++ b/tools/genruby.rb
@@ -410,6 +410,11 @@ libs << {
:modname=>'ElmPanel', :prefix=>'elm_panel', :outfile=>'elm/elm_panel.rb',
:requires=>["#{NATIVE}/elementary"], :constants=>[]
}
+libs << {
+ :lib=>ELM_LIB,:header=>'elm_image.h',
+ :modname=>'ElmImage', :prefix=>'elm_image', :outfile=>'elm/elm_image.rb',
+ :requires=>["#{NATIVE}/elementary"], :constants=>[]
+}
#
Dir.mkdir lib_path unless (File.exists? lib_path)
#