ffi-efl
by Jérémy Zurcher
http://asynk.ch
DESCRIPTION:
A ruby-ffi binding to efl libraries (Enlightenment Foundation Libraries).
FEATURES/PROBLEMS:
- pretty young project ...
- binding is complete but lacks ruby code and tests
SYNOPSIS:
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_set 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
evas_object_color_set 150,180,100,180
show
end
resize_object_add @bg
@lb = Elm::ElmLabel.new(self) do
text_set "Hello World!"
size_hint_align_fill
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
For more examples you may look at:
REQUIREMENTS:
- You need a sane enlightenment foundation libraries installation, for this you might like to use easy_e17.sh, or my git aware fork easy_e17.sh.
DOWNLOAD/INSTALL:
From rubygems:
[sudo] gem install ffi-efl
or from the git repository on github:
git clone git://github.com/jeremyz/ffi-efl.git cd ffi-efl rake gem:install
RESOURCES:
You can find this project in a few places:
Online repositories:
Gem:
CREDITS:
Special thanks to:
- Lionel Orry
- The enlightenment team
LICENSE:
MIT see MIT_LICENSE