summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJérémy Zurcher <jeremy@asynk.ch>2012-02-28 11:33:35 +0100
committerJérémy Zurcher <jeremy@asynk.ch>2012-02-28 11:33:35 +0100
commit94e65ef91def53be93f7cf1006510f08ff71f2dd (patch)
tree5c1137ef94505820b0b2a2b7ac811460c4eb4d66
parenteb68fd362b069f40b9d93cc4b3524dbc13eef6a4 (diff)
downloadffi-efl-94e65ef91def53be93f7cf1006510f08ff71f2dd.zip
ffi-efl-94e65ef91def53be93f7cf1006510f08ff71f2dd.tar.gz
parse elm_radio.h, generate elm_radio.rb
-rw-r--r--lib/efl/elementary_all.rb2
-rw-r--r--lib/efl/elm/elm_radio.rb22
-rw-r--r--lib/efl/native/elm/elm_radio.rb49
-rwxr-xr-xtools/genruby.rb2
4 files changed, 73 insertions, 2 deletions
diff --git a/lib/efl/elementary_all.rb b/lib/efl/elementary_all.rb
index 55257a0..e864d03 100644
--- a/lib/efl/elementary_all.rb
+++ b/lib/efl/elementary_all.rb
@@ -71,7 +71,7 @@ require 'efl/elm/elm_panes'
#require 'efl/elm/elm_photo'
#require 'efl/elm/elm_plug'
#require 'efl/elm/elm_progressbar'
-#require 'efl/elm/elm_radio'
+require 'efl/elm/elm_radio'
#require 'efl/elm/elm_route'
#require 'efl/elm/elm_scale'
require 'efl/elm/elm_scroller'
diff --git a/lib/efl/elm/elm_radio.rb b/lib/efl/elm/elm_radio.rb
new file mode 100644
index 0000000..7b5a3b9
--- /dev/null
+++ b/lib/efl/elm/elm_radio.rb
@@ -0,0 +1,22 @@
+#! /usr/bin/env ruby
+# -*- coding: UTF-8 -*-
+#
+require 'efl/elm/elm_object'
+require 'efl/native/elm/elm_radio'
+#
+module Efl
+ #
+ module Elm
+ #
+ class ElmRadio < ElmObject
+ #
+ include Helper
+ constructor :elm_radio_add
+ search_prefixes 'elm_radio_'
+ #
+ end
+ #
+ end
+end
+#
+# EOF
diff --git a/lib/efl/native/elm/elm_radio.rb b/lib/efl/native/elm/elm_radio.rb
new file mode 100644
index 0000000..765c61e
--- /dev/null
+++ b/lib/efl/native/elm/elm_radio.rb
@@ -0,0 +1,49 @@
+#! /usr/bin/env ruby
+# -*- coding: UTF-8 -*-
+#
+require 'efl/native'
+require 'efl/native/elementary'
+#
+module Efl
+ #
+ module ElmRadio
+ #
+ FCT_PREFIX = 'elm_radio_' 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_radio_add(Evas_Object *parent);
+ [ :elm_radio_add, [ :evas_object ], :evas_object ],
+ # EAPI void elm_radio_group_add(Evas_Object *obj, Evas_Object *group);
+ [ :elm_radio_group_add, [ :evas_object, :evas_object ], :void ],
+ # EAPI void elm_radio_state_value_set(Evas_Object *obj, int value);
+ [ :elm_radio_state_value_set, [ :evas_object, :int ], :void ],
+ # EAPI int elm_radio_state_value_get(const Evas_Object *obj);
+ [ :elm_radio_state_value_get, [ :evas_object ], :int ],
+ # EAPI void elm_radio_value_set(Evas_Object *obj, int value);
+ [ :elm_radio_value_set, [ :evas_object, :int ], :void ],
+ # EAPI int elm_radio_value_get(const Evas_Object *obj);
+ [ :elm_radio_value_get, [ :evas_object ], :int ],
+ # EAPI void elm_radio_value_pointer_set(Evas_Object *obj, int *valuep);
+ [ :elm_radio_value_pointer_set, [ :evas_object, :pointer ], :void ],
+ # EAPI Evas_Object *elm_radio_selected_object_get(Evas_Object *obj);
+ [ :elm_radio_selected_object_get, [ :evas_object ], :evas_object ],
+ ]
+ #
+ attach_fcts fcts
+ #
+ end
+end
+#
+# EOF
diff --git a/tools/genruby.rb b/tools/genruby.rb
index 38cd6e7..3907d6f 100755
--- a/tools/genruby.rb
+++ b/tools/genruby.rb
@@ -426,7 +426,7 @@ libs << elm_h('elm_panes.h', 'ElmPanes')
#libs << elm_h('elm_photo.h', 'ElmX')
#libs << elm_h('elm_plug.h', 'ElmX')
#libs << elm_h('elm_progressbar.h', 'ElmX')
-#libs << elm_h('elm_radio.h', 'ElmX')
+libs << elm_h('elm_radio.h', 'ElmRadio')
#libs << elm_h('elm_route.h', 'ElmX')
#libs << elm_h('elm_scale.h', 'ElmX')
#libs << elm_h('elm_scroll.h', 'ElmX')