diff options
| author | Jérémy Zurcher <jeremy@asynk.ch> | 2012-02-27 10:04:30 +0100 | 
|---|---|---|
| committer | Jérémy Zurcher <jeremy@asynk.ch> | 2012-02-27 10:04:30 +0100 | 
| commit | debba5aaff32de4ba857ad4f177fc6c2c21bec46 (patch) | |
| tree | 9cc559eec327fadd77b086bc088ae711a1770619 | |
| parent | 863fce3d0c74445ab4be4b69b998970f33fa076a (diff) | |
| download | ffi-efl-debba5aaff32de4ba857ad4f177fc6c2c21bec46.zip ffi-efl-debba5aaff32de4ba857ad4f177fc6c2c21bec46.tar.gz | |
parse elm_icon.h and generate elm_icon.rb
| -rw-r--r-- | lib/efl/native/elm/elm_icon.rb | 97 | ||||
| -rwxr-xr-x | tools/extract-api.sh | 1 | ||||
| -rwxr-xr-x | tools/genruby.rb | 5 | 
3 files changed, 103 insertions, 0 deletions
| diff --git a/lib/efl/native/elm/elm_icon.rb b/lib/efl/native/elm/elm_icon.rb new file mode 100644 index 0000000..dabfeb4 --- /dev/null +++ b/lib/efl/native/elm/elm_icon.rb @@ -0,0 +1,97 @@ +#! /usr/bin/env ruby +# -*- coding: UTF-8 -*- +# +require 'efl/native' +require 'efl/native/elementary' +# +module Efl +    # +    module ElmIcon +        # +        FCT_PREFIX = 'elm_icon_' 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_Icon_Type; +        enum :elm_icon_type, [ :elm_icon_none, :elm_icon_file, :elm_icon_standard ] +        # typedef enum {...} Elm_Icon_Lookup_Order; +        enum :elm_icon_lookup_order, [ :elm_icon_lookup_fdo_theme, :elm_icon_lookup_theme_fdo, :elm_icon_lookup_fdo, :elm_icon_lookup_theme ] +        # +        # FUNCTIONS +        fcts = [ +        # EAPI Evas_Object *elm_icon_add(Evas_Object *parent); +        [ :elm_icon_add, [ :evas_object ], :evas_object ], +        # EAPI Eina_Bool elm_icon_file_set(Evas_Object *obj, const char *file, const char *group); +        [ :elm_icon_file_set, [ :evas_object, :string, :string ], :bool ], +        # EAPI Eina_Bool elm_icon_memfile_set(Evas_Object *obj, const void *img, size_t size, const char *format, const char *key); +        [ :elm_icon_memfile_set, [ :evas_object, :pointer, :ulong, :string, :string ], :bool ], +        # EAPI void elm_icon_file_get(const Evas_Object *obj, const char **file, const char **group); +        [ :elm_icon_file_get, [ :evas_object, :pointer, :pointer ], :void ], +        # EAPI void elm_icon_thumb_set(Evas_Object *obj, const char *file, const char *group); +        [ :elm_icon_thumb_set, [ :evas_object, :string, :string ], :void ], +        # EAPI Eina_Bool elm_icon_standard_set(Evas_Object *obj, const char *name); +        [ :elm_icon_standard_set, [ :evas_object, :string ], :bool ], +        # EAPI const char *elm_icon_standard_get(const Evas_Object *obj); +        [ :elm_icon_standard_get, [ :evas_object ], :string ], +        # EAPI void elm_icon_smooth_set(Evas_Object *obj, Eina_Bool smooth); +        [ :elm_icon_smooth_set, [ :evas_object, :bool ], :void ], +        # EAPI Eina_Bool elm_icon_smooth_get(const Evas_Object *obj); +        [ :elm_icon_smooth_get, [ :evas_object ], :bool ], +        # EAPI void elm_icon_no_scale_set(Evas_Object *obj, Eina_Bool no_scale); +        [ :elm_icon_no_scale_set, [ :evas_object, :bool ], :void ], +        # EAPI Eina_Bool elm_icon_no_scale_get(const Evas_Object *obj); +        [ :elm_icon_no_scale_get, [ :evas_object ], :bool ], +        # EAPI void elm_icon_scale_set(Evas_Object *obj, Eina_Bool scale_up, Eina_Bool scale_down); +        [ :elm_icon_scale_set, [ :evas_object, :bool, :bool ], :void ], +        # EAPI void elm_icon_scale_get(const Evas_Object *obj, Eina_Bool *scale_up, Eina_Bool *scale_down); +        [ :elm_icon_scale_get, [ :evas_object, :pointer, :pointer ], :void ], +        # EAPI void elm_icon_size_get(const Evas_Object *obj, int *w, int *h); +        [ :elm_icon_size_get, [ :evas_object, :pointer, :pointer ], :void ], +        # EAPI void elm_icon_fill_outside_set(Evas_Object *obj, Eina_Bool fill_outside); +        [ :elm_icon_fill_outside_set, [ :evas_object, :bool ], :void ], +        # EAPI Eina_Bool elm_icon_fill_outside_get(const Evas_Object *obj); +        [ :elm_icon_fill_outside_get, [ :evas_object ], :bool ], +        # EAPI void elm_icon_prescale_set(Evas_Object *obj, int size); +        [ :elm_icon_prescale_set, [ :evas_object, :int ], :void ], +        # EAPI int elm_icon_prescale_get(const Evas_Object *obj); +        [ :elm_icon_prescale_get, [ :evas_object ], :int ], +        # EAPI Evas_Object *elm_icon_object_get(Evas_Object *obj); +        [ :elm_icon_object_get, [ :evas_object ], :evas_object ], +        # EAPI void elm_icon_order_lookup_set(Evas_Object *obj, Elm_Icon_Lookup_Order order); +        [ :elm_icon_order_lookup_set, [ :evas_object, :elm_icon_lookup_order ], :void ], +        # EAPI Elm_Icon_Lookup_Order elm_icon_order_lookup_get(const Evas_Object *obj); +        [ :elm_icon_order_lookup_get, [ :evas_object ], :elm_icon_lookup_order ], +        # EAPI void elm_icon_preload_set(Evas_Object *obj, Eina_Bool disable); +        [ :elm_icon_preload_set, [ :evas_object, :bool ], :void ], +        # EAPI Eina_Bool elm_icon_animated_available_get(const Evas_Object *obj); +        [ :elm_icon_animated_available_get, [ :evas_object ], :bool ], +        # EAPI void elm_icon_animated_set(Evas_Object *obj, Eina_Bool animated); +        [ :elm_icon_animated_set, [ :evas_object, :bool ], :void ], +        # EAPI Eina_Bool elm_icon_animated_get(const Evas_Object *obj); +        [ :elm_icon_animated_get, [ :evas_object ], :bool ], +        # EAPI void elm_icon_animated_play_set(Evas_Object *obj, Eina_Bool play); +        [ :elm_icon_animated_play_set, [ :evas_object, :bool ], :void ], +        # EAPI Eina_Bool elm_icon_animated_play_get(const Evas_Object *obj); +        [ :elm_icon_animated_play_get, [ :evas_object ], :bool ], +        # EAPI void elm_icon_aspect_fixed_set(Evas_Object *obj, Eina_Bool fixed); +        [ :elm_icon_aspect_fixed_set, [ :evas_object, :bool ], :void ], +        # EAPI Eina_Bool elm_icon_aspect_fixed_get(const Evas_Object *obj); +        [ :elm_icon_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 f17a0fe..ba30448 100755 --- a/tools/extract-api.sh +++ b/tools/extract-api.sh @@ -46,6 +46,7 @@ for header in \      "${INCLUDE}/elementary-0/elm_general.h" \      "${INCLUDE}/elementary-0/elm_tooltip.h" \      "${INCLUDE}/elementary-0/elm_object_item.h" \ +    "${INCLUDE}/elementary-0/elm_icon.h" \      ; do      #      if [ ! -e "$header" ]; then diff --git a/tools/genruby.rb b/tools/genruby.rb index 96f50c6..52a174a 100755 --- a/tools/genruby.rb +++ b/tools/genruby.rb @@ -350,6 +350,11 @@ libs << {      :modname=>'ElmObjectItem', :prefix=>'elm_object_item', :outfile=>'elm/elm_object_item.rb',      :requires=>["#{NATIVE}/elementary"], :constants=>[]  } +libs << { +    :lib=>ELM_LIB,:header=>'elm_icon.h', +    :modname=>'ElmIcon', :prefix=>'elm_icon', :outfile=>'elm/elm_icon.rb', +    :requires=>["#{NATIVE}/elementary"], :constants=>[] +}  Dir.mkdir lib_path unless (File.exists? lib_path)  #  libs.each do |lib| | 
