1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
#! /usr/bin/env ruby
# -*- coding: UTF-8 -*-
#
require 'efl/elm/elm_win'
require 'efl/elm/elm_bg'
require 'efl/elm/elm_label'
#
include Efl
#
class MyWin < Elm::ElmWin
#
def initialize name, title, &block
super FFI::MemoryPointer::NULL, name, &block
title = title
feed
smart_callback_add "delete,request", method(:on_delete), FFI::MemoryPointer.from_string("my data")
end
def feed
@bg = Elm::ElmBg.new(self) do
size_hint_weight_expand
evas_object_color_set 200,255,100,150
show
end
resize_object_add @bg
@lb = Elm::ElmLabel.new(self) do
text_set "Hello World!"
size_hint_align_fill
size_hint_weight_expand
show
end
resize_object_add @lb
end
def on_delete data, evas_object, event_info
puts "EXIT #{data.read_string}"
Elm.exit
end
end
#
Elm.init
#
win = MyWin.new "App name", "Window Title" do
alpha_set true
resize 200, 100
center_set 600, 300
show
end
#
Elm.run
Elm.shutdown
#
# EOF
|