summaryrefslogtreecommitdiffstats
path: root/lib/efl
diff options
context:
space:
mode:
Diffstat (limited to 'lib/efl')
-rw-r--r--lib/efl/elm/elm_menu.rb55
-rw-r--r--lib/efl/native/elm/elm_menu.rb77
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