diff options
author | Jérémy Zurcher <jeremy@asynk.ch> | 2011-04-20 17:43:48 +0200 |
---|---|---|
committer | Jérémy Zurcher <jeremy@asynk.ch> | 2011-04-20 17:43:48 +0200 |
commit | 6865df2bd776a80afc485e23b223ac1dac289b86 (patch) | |
tree | 7ec0c5a714eb0ed184cf96fe4521d05cea2d3fa6 /test/elm_win_class.rb | |
parent | 1e52dc26575a472fd108e187bda2cd2447a387cc (diff) | |
download | ffi-efl-6865df2bd776a80afc485e23b223ac1dac289b86.zip ffi-efl-6865df2bd776a80afc485e23b223ac1dac289b86.tar.gz |
add elementary ffi + quick and dirty test window
Diffstat (limited to 'test/elm_win_class.rb')
-rw-r--r-- | test/elm_win_class.rb | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/test/elm_win_class.rb b/test/elm_win_class.rb new file mode 100644 index 0000000..dad9b4e --- /dev/null +++ b/test/elm_win_class.rb @@ -0,0 +1,43 @@ +#! /usr/bin/env ruby +# -*- coding: UTF-8 -*- +# +require 'efl/elementary' +# +include Efl +# +puts Elm.init + +class MyWin < Elm::ElmWin + def initialize name, title + super FFI::MemoryPointer::NULL, name + win_title_set title + feed + Efl::API.evas_object_smart_callback_add @ptr, "delete,request", method(:exit), FFI::MemoryPointer::NULL + end + def feed + @bg = add 'bg' + Efl::API.evas_object_size_hint_weight_set @bg, 1.0, 1.0 + resize_object_add @bg + Efl::API.evas_object_show @bg + @lb = add 'label' + Efl::API.elm_label_label_set @lb, "Hello World!" + Efl::API.evas_object_size_hint_weight_set @lb, 1.0, 1.0 + resize_object_add @lb + Efl::API.evas_object_show @lb + end + def exit *args + Efl::API.elm_exit(); + end +end +# +win = MyWin.new "App name", "Window Title" do |w| + Efl::API.evas_object_move w.ptr, 300, 300 + Efl::API.evas_object_resize w.ptr, 200, 100 + Efl::API.evas_object_show w.ptr +end + +Elm.run +puts Elm.shutdown +# +# EOF + |