summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJérémy Zurcher <jeremy@asynk.ch>2012-02-28 10:52:00 +0100
committerJérémy Zurcher <jeremy@asynk.ch>2012-02-28 10:52:00 +0100
commit903e6acf51d52b614e62ca4403fa64eac54dde5b (patch)
treed3f1c0c193f48f3db525aa7b4f0e068e829272c8
parent156be17f641a60ee20e94f46adefa1bdac17dbba (diff)
downloadffi-efl-903e6acf51d52b614e62ca4403fa64eac54dde5b.zip
ffi-efl-903e6acf51d52b614e62ca4403fa64eac54dde5b.tar.gz
parse elm_ctxpopup.h, generate elm_ctxpopup.rb
-rw-r--r--lib/efl/elementary_all.rb2
-rw-r--r--lib/efl/elm/elm_ctxpopup.rb27
-rw-r--r--lib/efl/native/elm/elm_ctxpopup.rb59
-rwxr-xr-xtools/genruby.rb2
4 files changed, 88 insertions, 2 deletions
diff --git a/lib/efl/elementary_all.rb b/lib/efl/elementary_all.rb
index 71e49a8..1d87f6e 100644
--- a/lib/efl/elementary_all.rb
+++ b/lib/efl/elementary_all.rb
@@ -24,7 +24,7 @@ require 'efl/elm/elm_clock'
require 'efl/elm/elm_colorselector'
#require 'efl/elm/elm_config'
#require 'efl/elm/elm_conform'
-#require 'efl/elm/elm_ctxpopup'
+require 'efl/elm/elm_ctxpopup'
require 'efl/elm/elm_cursor'
#require 'efl/elm/elm_debug'
require 'efl/elm/elm_diskselector'
diff --git a/lib/efl/elm/elm_ctxpopup.rb b/lib/efl/elm/elm_ctxpopup.rb
new file mode 100644
index 0000000..4a874a1
--- /dev/null
+++ b/lib/efl/elm/elm_ctxpopup.rb
@@ -0,0 +1,27 @@
+#! /usr/bin/env ruby
+# -*- coding: UTF-8 -*-
+#
+require 'efl/elm/elm_object'
+require 'efl/elm/elm_object_item'
+require 'efl/native/elm/elm_ctxpopup'
+#
+module Efl
+ #
+ module Elm
+ #
+ class ElmCtxPopup < ElmObject
+ #
+ include Helper
+ constructor :elm_ctxpopup_add
+ search_prefixes 'elm_ctxpopup_'
+ #
+ def item_append label, icon=nil, cb=nil, data=nil
+ ElmObjectItem.new Native::elm_ctxpopup_item_append @ptr, label, icon, cb, data
+ end
+ #
+ end
+ #
+ end
+end
+#
+# EOF
diff --git a/lib/efl/native/elm/elm_ctxpopup.rb b/lib/efl/native/elm/elm_ctxpopup.rb
new file mode 100644
index 0000000..1578b75
--- /dev/null
+++ b/lib/efl/native/elm/elm_ctxpopup.rb
@@ -0,0 +1,59 @@
+#! /usr/bin/env ruby
+# -*- coding: UTF-8 -*-
+#
+require 'efl/native'
+require 'efl/native/elementary'
+#
+module Efl
+ #
+ module ElmCtxPopup
+ #
+ FCT_PREFIX = 'elm_ctxpopup_' 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'
+ #
+ # ENUMS
+ # typedef enum {...} Elm_Ctxpopup_Direction;
+ enum :elm_ctxpopup_direction, [ :elm_ctxpopup_direction_down, :elm_ctxpopup_direction_right, :elm_ctxpopup_direction_left,
+ :elm_ctxpopup_direction_up, :elm_ctxpopup_direction_unknown ]
+ #
+ # FUNCTIONS
+ fcts = [
+ # EAPI Evas_Object *elm_ctxpopup_add(Evas_Object *parent);
+ [ :elm_ctxpopup_add, [ :evas_object ], :evas_object ],
+ # EAPI void elm_ctxpopup_hover_parent_set(Evas_Object *obj, Evas_Object *parent);
+ [ :elm_ctxpopup_hover_parent_set, [ :evas_object, :evas_object ], :void ],
+ # EAPI Evas_Object *elm_ctxpopup_hover_parent_get(const Evas_Object *obj);
+ [ :elm_ctxpopup_hover_parent_get, [ :evas_object ], :evas_object ],
+ # EAPI void elm_ctxpopup_clear(Evas_Object *obj);
+ [ :elm_ctxpopup_clear, [ :evas_object ], :void ],
+ # EAPI void elm_ctxpopup_horizontal_set(Evas_Object *obj, Eina_Bool horizontal);
+ [ :elm_ctxpopup_horizontal_set, [ :evas_object, :bool ], :void ],
+ # EAPI Eina_Bool elm_ctxpopup_horizontal_get(const Evas_Object *obj);
+ [ :elm_ctxpopup_horizontal_get, [ :evas_object ], :bool ],
+ # EAPI Elm_Object_Item *elm_ctxpopup_item_append(Evas_Object *obj, const char *label, Evas_Object *icon, Evas_Smart_Cb func, const void *data);
+ [ :elm_ctxpopup_item_append, [ :evas_object, :string, :evas_object, :evas_smart_cb, :pointer ], :elm_object_item ],
+ # EAPI void elm_ctxpopup_direction_priority_set(Evas_Object *obj, Elm_Ctxpopup_Direction first, Elm_Ctxpopup_Direction second, Elm_Ctxpopup_Direction third, Elm_Ctxpopup_Direction fourth);
+ [ :elm_ctxpopup_direction_priority_set, [ :evas_object, :elm_ctxpopup_direction, :elm_ctxpopup_direction, :elm_ctxpopup_direction,
+ :elm_ctxpopup_direction ], :void ],
+ # EAPI void elm_ctxpopup_direction_priority_get(Evas_Object *obj, Elm_Ctxpopup_Direction *first, Elm_Ctxpopup_Direction *second, Elm_Ctxpopup_Direction *third, Elm_Ctxpopup_Direction *fourth);
+ [ :elm_ctxpopup_direction_priority_get, [ :evas_object, :pointer, :pointer, :pointer, :pointer ], :void ],
+ # EAPI Elm_Ctxpopup_Direction elm_ctxpopup_direction_get(const Evas_Object *obj);
+ [ :elm_ctxpopup_direction_get, [ :evas_object ], :elm_ctxpopup_direction ],
+ ]
+ #
+ attach_fcts fcts
+ #
+ end
+end
+#
+# EOF
diff --git a/tools/genruby.rb b/tools/genruby.rb
index 043f80b..27b1097 100755
--- a/tools/genruby.rb
+++ b/tools/genruby.rb
@@ -367,7 +367,7 @@ libs << elm_h('elm_entry.h', 'ElmEntry', ["#{NATIVE}/edje","#{NATIVE}/elementary
libs << elm_h('elm_list.h', 'ElmList', ["#{NATIVE}/elementary","#{NATIVE}/elm/elm_scroller"])
libs << elm_h('elc_anchorblock.h', 'ElmAnchorBlock')
libs << elm_h('elc_anchorview.h', 'ElmAnchorView')
-#libs << elm_h('elc_ctxpopup.h', 'ElmX')
+libs << elm_h('elc_ctxpopup.h', 'ElmCtxPopup')
libs << elm_h('elc_fileselector_button.h', 'ElmFileSelectorButton')
libs << elm_h('elc_fileselector_entry.h', 'ElmFileSelectorEntry')
libs << elm_h('elc_fileselector.h', 'ElmFileSelector')