diff options
| -rw-r--r-- | lib/efl/ecore_evas.rb | 62 | 
1 files changed, 62 insertions, 0 deletions
diff --git a/lib/efl/ecore_evas.rb b/lib/efl/ecore_evas.rb index 46aa706..f92222c 100644 --- a/lib/efl/ecore_evas.rb +++ b/lib/efl/ecore_evas.rb @@ -7,7 +7,69 @@ module Efl      #      module EcoreEvas          # +        class REcoreEvas +            include Efl::ClassHelper +            @search_paths = [ [Efl::EcoreEvas,'ecore_evas_'].freeze ] +            def initialize o=nil, &block +                @ptr = ( +                    case o +                    when NilClass +                        FFI::AutoPointer.new Efl::EcoreEvas.ecore_evas_new(nil, 0, 0, 0, 0, nil), method(:free) +                    when self.class +                        o.to_ptr +                    when FFI::AutoPointer +                        o +                    when FFI::Pointer +                        FFI::AutoPointer.new o, method(:free) +                    else +                        raise ArgumentError.new "wrong argument #{o.class.name}" +                    end +                ) +                yield self if block_given? +            end +            def free +                Efl::EcoreEvas.ecore_evas_free @ptr +                @ptr=nil +            end +            def get +                # EAPI Evas *ecore_evas_get(const Ecore_Evas *ee); +                Efl::Evas::REvas.new Efl::EcoreEvas.ecore_evas_get @ptr +            end +            def object_image_new +                # EAPI Evas_Object *ecore_evas_object_image_new(Ecore_Evas *ee_target); +                Efl::Evas::REvasObject.new Efl::EcoreEvas.ecore_evas_object_image_new @prt +            end +            def object_associate_get +                # EAPI Evas_Object *ecore_evas_object_associate_get(const Ecore_Evas *ee); +                Efl::Evas::REvasObject.new Efl::EcoreEvas.ecore_evas_object_associate_get @prt +            end +            # +        end +        # +    end +    # +    module Evas +        # +        class REvas +            def ecore_evas_get +                # EAPI Ecore_Evas *ecore_evas_ecore_evas_get(const Evas *e); +                Efl::EcoreEvas::REcoreEvas.new Efl::EcoreEvas.ecore_evas_ecore_evas_get @ptr +            end +        end +        # +        class REvasObject +            def ecore_evas_get +                # EAPI Ecore_Evas *ecore_evas_object_ecore_evas_get(Evas_Object *obj); +                Efl::EcoreEvas::REcoreEvas.new Efl::EcoreEvas.ecore_evas_object_ecore_evas_get @ptr +            end +            def evas_get +                # EAPI Evas *ecore_evas_object_evas_get(Evas_Object *obj); +                Efl::Evas::REvas.new Efl::EcoreEvas.ecore_evas_object_evas_get @ptr +            end +        end      end +    # TODO +    #EAPI unsigned char ecore_getopt_callback_ecore_evas_list_engines(const Ecore_Getopt *parser, const Ecore_Getopt_Desc *desc, const char *str, void *data, Ecore_Getopt_Value *storage);      #  end  #  | 
