diff options
Diffstat (limited to 'lib/efl')
| -rw-r--r-- | lib/efl/elm/elm_menu.rb | 55 | ||||
| -rw-r--r-- | lib/efl/native/elm/elm_menu.rb | 77 | 
2 files changed, 132 insertions, 0 deletions
| diff --git a/lib/efl/elm/elm_menu.rb b/lib/efl/elm/elm_menu.rb new file mode 100644 index 0000000..f285011 --- /dev/null +++ b/lib/efl/elm/elm_menu.rb @@ -0,0 +1,55 @@ +#! /usr/bin/env ruby +# -*- coding: UTF-8 -*- +# +require 'efl/elm/elm_object' +require 'efl/elm/elm_object_item' +require 'efl/native/elm/elm_menu' +# +module Efl +    # +    module Elm +        # +        class ElmMenu < ElmObject +            # +            include Helper +            constructor :elm_menu_add +            search_prefixes 'elm_menu_' +            # +            def item_add parent, icon=nil, label=nil, cb=nil, data=nil +                ElmObjectItem.new Native::elm_menu_item_add @ptr, parent, icon, label, cb, data +            end +            # +            def item_add_object parent, subobj, cb=nil, data=nil +                ElmObjectItem.new Native::elm_menu_item_add_object @ptr, parent, subobj, cb, data +            end +            # +            def item_separator_add parent +                ElmObjectItem.new Native::elm_menu_item_separator_add @ptr, parent +            end +            # +            def selected_item_get +                ElmObjectItem.new Native::elm_menu_selected_item_get @ptr +            end +            # +            def last_item_get +                ElmObjectItem.new Native::elm_menu_last_item_get @ptr +            end +            # +            def first_item_get +                ElmObjectItem.new Native::elm_menu_first_item_get @ptr +            end +            # +            def item_next_get it +                ElmObjectItem.new Native::elm_menu_item_next_get it +            end +            # +            def item_prev_get it +                ElmObjectItem.new Native::elm_menu_item_prev_get it +            end +            # +        end +        # +    end +end +# +# EOF diff --git a/lib/efl/native/elm/elm_menu.rb b/lib/efl/native/elm/elm_menu.rb new file mode 100644 index 0000000..bb981a6 --- /dev/null +++ b/lib/efl/native/elm/elm_menu.rb @@ -0,0 +1,77 @@ +#! /usr/bin/env ruby +# -*- coding: UTF-8 -*- +# +require 'efl/native' +require 'efl/native/elementary' +# +module Efl +    # +    module ElmMenu +        # +        FCT_PREFIX = 'elm_menu_' 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_menu_add(Evas_Object *parent); +        [ :elm_menu_add, [ :evas_object ], :evas_object ], +        # EAPI void elm_menu_parent_set(Evas_Object *obj, Evas_Object *parent); +        [ :elm_menu_parent_set, [ :evas_object, :evas_object ], :void ], +        # EAPI Evas_Object *elm_menu_parent_get(const Evas_Object *obj); +        [ :elm_menu_parent_get, [ :evas_object ], :evas_object ], +        # EAPI void elm_menu_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y); +        [ :elm_menu_move, [ :evas_object, :int, :int ], :void ], +        # EAPI void elm_menu_close(Evas_Object *obj); +        [ :elm_menu_close, [ :evas_object ], :void ], +        # EAPI const Eina_List *elm_menu_items_get(const Evas_Object *obj); +        [ :elm_menu_items_get, [ :evas_object ], :eina_list ], +        # EAPI Evas_Object *elm_menu_item_object_get(const Elm_Object_Item *it); +        [ :elm_menu_item_object_get, [ :elm_object_item ], :evas_object ], +        # EAPI Elm_Object_Item *elm_menu_item_add(Evas_Object *obj, Elm_Object_Item *parent, const char *icon, const char *label, Evas_Smart_Cb func, const void *data); +        [ :elm_menu_item_add, [ :evas_object, :elm_object_item, :string, :string, :evas_smart_cb, :pointer ], :elm_object_item ], +        # EAPI Elm_Object_Item *elm_menu_item_add_object(Evas_Object *obj, Elm_Object_Item *parent, Evas_Object *subobj, Evas_Smart_Cb func, const void *data); +        [ :elm_menu_item_add_object, [ :evas_object, :elm_object_item, :evas_object, :evas_smart_cb, :pointer ], :elm_object_item ], +        # EAPI void elm_menu_item_object_icon_name_set(Elm_Object_Item *it, const char *icon); +        [ :elm_menu_item_object_icon_name_set, [ :elm_object_item, :string ], :void ], +        # EAPI const char *elm_menu_item_object_icon_name_get(const Elm_Object_Item *it); +        [ :elm_menu_item_object_icon_name_get, [ :elm_object_item ], :string ], +        # EAPI void elm_menu_item_selected_set(Elm_Object_Item *it, Eina_Bool selected); +        [ :elm_menu_item_selected_set, [ :elm_object_item, :bool ], :void ], +        # EAPI Eina_Bool elm_menu_item_selected_get(const Elm_Object_Item *it); +        [ :elm_menu_item_selected_get, [ :elm_object_item ], :bool ], +        # EAPI Elm_Object_Item *elm_menu_item_separator_add(Evas_Object *obj, Elm_Object_Item *parent); +        [ :elm_menu_item_separator_add, [ :evas_object, :elm_object_item ], :elm_object_item ], +        # EAPI Eina_Bool elm_menu_item_is_separator(Elm_Object_Item *it); +        [ :elm_menu_item_is_separator, [ :elm_object_item ], :bool ], +        # EAPI const Eina_List *elm_menu_item_subitems_get(const Elm_Object_Item *it); +        [ :elm_menu_item_subitems_get, [ :elm_object_item ], :eina_list ], +        # EAPI unsigned int elm_menu_item_index_get(const Elm_Object_Item *it); +        [ :elm_menu_item_index_get, [ :elm_object_item ], :uint ], +        # EAPI Elm_Object_Item *elm_menu_selected_item_get(const Evas_Object *obj); +        [ :elm_menu_selected_item_get, [ :evas_object ], :elm_object_item ], +        # EAPI Elm_Object_Item *elm_menu_last_item_get(const Evas_Object *obj); +        [ :elm_menu_last_item_get, [ :evas_object ], :elm_object_item ], +        # EAPI Elm_Object_Item *elm_menu_first_item_get(const Evas_Object *obj); +        [ :elm_menu_first_item_get, [ :evas_object ], :elm_object_item ], +        # EAPI Elm_Object_Item *elm_menu_item_next_get(const Elm_Object_Item *it); +        [ :elm_menu_item_next_get, [ :elm_object_item ], :elm_object_item ], +        # EAPI Elm_Object_Item *elm_menu_item_prev_get(const Elm_Object_Item *it); +        [ :elm_menu_item_prev_get, [ :elm_object_item ], :elm_object_item ], +        ] +        # +        attach_fcts fcts +        # +    end +end +# +# EOF | 
