diff options
author | Jérémy Zurcher <jeremy@asynk.ch> | 2011-06-06 21:33:07 +0200 |
---|---|---|
committer | Jérémy Zurcher <jeremy@asynk.ch> | 2011-06-06 21:33:07 +0200 |
commit | bf77dd78ff5136a30a54a1f0c7547d27f6570968 (patch) | |
tree | 83d08ce41d514ba7bd9854aa6319e2339dc4d30c | |
parent | fd2933a6ebb06e4dffef31c5433bd31e7e9a483e (diff) | |
download | ffi-efl-bf77dd78ff5136a30a54a1f0c7547d27f6570968.zip ffi-efl-bf77dd78ff5136a30a54a1f0c7547d27f6570968.tar.gz |
elementary.rb : use meta instead of explicit initialize methods
-rw-r--r-- | lib/efl/elementary.rb | 82 |
1 files changed, 40 insertions, 42 deletions
diff --git a/lib/efl/elementary.rb b/lib/efl/elementary.rb index f3c278b..e71ac88 100644 --- a/lib/efl/elementary.rb +++ b/lib/efl/elementary.rb @@ -11,6 +11,18 @@ module Efl Native::VersionStruct.new(Native.elm_version) end # + module Helper + def self.included kls + def kls.constructor meth + self.class_eval <<-EOF + def initialize parent, &block + super Native.method(:#{meth}), parent, &block + end + EOF + end + end + end + # class << self def init *args a = args.select { |e| e.is_a? String } @@ -56,11 +68,10 @@ module Efl # class ElmBg < Efl::Evas::REvasObject # + include Helper + constructor :elm_bg_add search_prefixes 'elm_bg_', 'elm_object_' # - def initialize parent, &block - super Native.method(:elm_bg_add), parent, &block - end def file_get f = FFI::MemoryPointer.new :pointer g = FFI::MemoryPointer.new :pointer @@ -80,12 +91,10 @@ module Efl # class ElmLayout < Efl::Evas::REvasObject # + include Helper + constructor :elm_layout_add search_prefixes 'elm_layout_', 'elm_object_' # - def initialize parent, &block - super Native.method(:elm_layout_add), parent, &block - end - # def edje_get &block Efl::Edje::REdje.new Native.method(:elm_layout_edje_get), @ptr, &block end @@ -94,12 +103,10 @@ module Efl # class ElmBox < Efl::Evas::REvasObject # + include Helper + constructor :elm_box_add search_prefixes 'elm_box_', 'elm_object_' # - def initialize parent, &block - super Native.method(:elm_box_add), parent, &block - end - # def padding_get x = FFI::MemoryPointer.new :int y = FFI::MemoryPointer.new :int @@ -124,22 +131,18 @@ module Efl # class ElmList < Efl::Evas::REvasObject # + include Helper + constructor :elm_list_add search_prefixes 'elm_list_', 'elm_object_' # - def initialize parent, &block - super Native.method(:elm_list_add), parent, &block - end - # end # class ElmIcon < Efl::Evas::REvasObject # + include Helper + constructor :elm_icon_add search_prefixes 'elm_icon_', 'elm_object_' # - def initialize parent, &block - super Native.method(:elm_icon_add), parent, &block - end - # def scale_set args Native.elm_icon_scale_set @ptr, *args end @@ -148,39 +151,34 @@ module Efl # class ElmLabel < Efl::Evas::REvasObject # + include Helper + constructor :elm_label_add search_prefixes 'elm_label_', 'elm_object_' # - def initialize parent, &block - super Native.method(:elm_label_add), parent, &block - end end # class ElmPager < Efl::Evas::REvasObject # + include Helper + constructor :elm_pager_add search_prefixes 'elm_pager_', 'elm_object_' # - def initialize parent, &block - super Native.method(:elm_pager_add), parent, &block - end end # class ElmPanel < Efl::Evas::REvasObject # + include Helper + constructor :elm_panel_add search_prefixes 'elm_panel_', 'elm_object' # - def initialize parent, &block - super Native.method(:elm_panel_add), parent, &block - end end # class ElmDiskSelector < Efl::Evas::REvasObject # + include Helper + constructor :elm_diskselector_add search_prefixes 'elm_diskselector_', 'elm_object' # - def initialize parent, &block - super Native.method(:elm_diskselector_add), parent, &block - end - # def item_selected_set it, b Native::elm_diskselector_item_selected_set it, b end @@ -189,6 +187,8 @@ module Efl # class ElmDiskSelectorItem < Efl::Evas::REvasObject # +# include Helper +# constructor :elm_icon_add search_prefixes 'elm_diskselector_item_', 'elm_object' # def data_get @@ -199,30 +199,26 @@ module Efl # class ElmNotify < Efl::Evas::REvasObject # + include Helper + constructor :elm_notify_add search_prefixes 'elm_notify_', 'elm_object' # - def initialize parent, &block - super Native.method(:elm_notify_add), parent, &block - end end # class ElmEntry < Efl::Evas::REvasObject # + include Helper + constructor :elm_entry_add search_prefixes 'elm_entry_', 'elm_object' # - def initialize parent, &block - super Native.method(:elm_entry_add), parent, &block - end end # class ElmFlipSelector < Efl::Evas::REvasObject # + include Helper + constructor :elm_flipselector_add search_prefixes 'elm_flipselector_', 'elm_object' # - def initialize parent, &block - super Native.method(:elm_flipselector_add), parent, &block - end - # def item_append label, cb, data ElmFlipSelectorItem.new Native::elm_flipselector_item_append @ptr, label, cb, data end @@ -235,6 +231,8 @@ module Efl # class ElmFlipSelectorItem < Efl::Evas::REvasObject # +# include Helper +# constructor :elm_icon_add search_prefixes 'elm_flipselector_item_', 'elm_object' # end |