summaryrefslogtreecommitdiffstats
path: root/test/test_elm_win_class.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_elm_win_class.rb')
-rw-r--r--test/test_elm_win_class.rb49
1 files changed, 49 insertions, 0 deletions
diff --git a/test/test_elm_win_class.rb b/test/test_elm_win_class.rb
new file mode 100644
index 0000000..7934551
--- /dev/null
+++ b/test/test_elm_win_class.rb
@@ -0,0 +1,49 @@
+#! /usr/bin/env ruby
+# -*- coding: UTF-8 -*-
+#
+require 'efl/elementary'
+#
+include Efl
+#
+DATA = FFI::MemoryPointer.from_string("my data")
+#
+class MyWin < Elm::ElmWin
+ def initialize name, title
+ super FFI::MemoryPointer::NULL, name
+ title_set title
+ feed
+ smart_callback_add "delete,request", method(:exit), DATA
+ end
+ def feed
+ # using block
+ @bg = add 'bg' do |bg|
+ bg.size_hint_weight_set 1.0, 1.0
+ bg.show
+ end
+ resize_object_add @bg.ptr
+ @lb = add 'label'do |lb|
+ lb.elm_label_label_set "Hello World!" # complete function name
+ lb.size_hint_weight_set 1.0, 1.0 # implicit evas_object function name prefix
+ end
+ @lb.show
+ resize_object_add @lb.ptr
+ end
+ def exit data, evas_object, event_info
+ puts "EXIT #{data.read_string}"
+ Elm.exit
+ end
+end
+#
+Elm.init
+#
+win = MyWin.new "App name", "Window Title" do |w,eo|
+ eo.move 300, 300
+ eo.resize 200, 100
+ eo.show
+end
+#
+Elm.run
+Elm.shutdown
+#
+# EOF
+