From c70913b5ec836a345a6b96ec72e16d789d2705b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Zurcher?= Date: Mon, 27 Feb 2012 10:51:27 +0100 Subject: parse elm_bg.h and generate elm_bg.rb --- lib/efl/native/elm/elm_bg.rb | 53 ++++++++++++++++++++++++++++++++++++++++++++ tools/extract-api.sh | 1 + tools/genruby.rb | 5 +++++ 3 files changed, 59 insertions(+) create mode 100644 lib/efl/native/elm/elm_bg.rb diff --git a/lib/efl/native/elm/elm_bg.rb b/lib/efl/native/elm/elm_bg.rb new file mode 100644 index 0000000..7aa1c61 --- /dev/null +++ b/lib/efl/native/elm/elm_bg.rb @@ -0,0 +1,53 @@ +#! /usr/bin/env ruby +# -*- coding: UTF-8 -*- +# +require 'efl/native' +require 'efl/native/elementary' +# +module Efl + # + module ElmBg + # + FCT_PREFIX = 'elm_bg_' 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_Bg_Option; + enum :elm_bg_option, [ :elm_bg_option_center, :elm_bg_option_scale, :elm_bg_option_stretch, :elm_bg_option_tile ] + # + # FUNCTIONS + fcts = [ + # EAPI Evas_Object *elm_bg_add(Evas_Object *parent); + [ :elm_bg_add, [ :evas_object ], :evas_object ], + # EAPI void elm_bg_file_set(Evas_Object *obj, const char *file, const char *group); + [ :elm_bg_file_set, [ :evas_object, :string, :string ], :void ], + # EAPI void elm_bg_file_get(const Evas_Object *obj, const char **file, const char **group); + [ :elm_bg_file_get, [ :evas_object, :pointer, :pointer ], :void ], + # EAPI void elm_bg_option_set(Evas_Object *obj, Elm_Bg_Option option); + [ :elm_bg_option_set, [ :evas_object, :elm_bg_option ], :void ], + # EAPI Elm_Bg_Option elm_bg_option_get(const Evas_Object *obj); + [ :elm_bg_option_get, [ :evas_object ], :elm_bg_option ], + # EAPI void elm_bg_color_set(Evas_Object *obj, int r, int g, int b); + [ :elm_bg_color_set, [ :evas_object, :int, :int, :int ], :void ], + # EAPI void elm_bg_color_get(const Evas_Object *obj, int *r, int *g, int *b); + [ :elm_bg_color_get, [ :evas_object, :pointer, :pointer, :pointer ], :void ], + # EAPI void elm_bg_load_size_set(Evas_Object *obj, Evas_Coord w, Evas_Coord h); + [ :elm_bg_load_size_set, [ :evas_object, :int, :int ], :void ], + ] + # + attach_fcts fcts + # + end +end +# +# EOF diff --git a/tools/extract-api.sh b/tools/extract-api.sh index 7139a4e..7b3b207 100755 --- a/tools/extract-api.sh +++ b/tools/extract-api.sh @@ -51,6 +51,7 @@ for header in \ "${INCLUDE}/elementary-0/elm_entry.h" \ "${INCLUDE}/elementary-0/elm_list.h" \ "${INCLUDE}/elementary-0/elm_win.h" \ + "${INCLUDE}/elementary-0/elm_bg.h" \ ; do # if [ ! -e "$header" ]; then diff --git a/tools/genruby.rb b/tools/genruby.rb index 1ac1144..545459f 100755 --- a/tools/genruby.rb +++ b/tools/genruby.rb @@ -375,6 +375,11 @@ libs << { :modname=>'ElmWin', :prefix=>'elm_win', :outfile=>'elm/elm_win.rb', :requires=>["#{NATIVE}/elementary"], :constants=>[] } +libs << { + :lib=>ELM_LIB,:header=>'elm_bg.h', + :modname=>'ElmBg', :prefix=>'elm_bg', :outfile=>'elm/elm_bg.rb', + :requires=>["#{NATIVE}/elementary"], :constants=>[] +} Dir.mkdir lib_path unless (File.exists? lib_path) # libs.each do |lib| -- cgit v1.1-2-g2b99