Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
ffi-efl is a FFI binding to Enlightenment Foundation Libraries (eina,eet,evas,ecore,edje,...) part of the Enlightenment project.
Ruby

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib
spec
test
tools
.gitignore
Changelog
Gemfile
Gemfile.lock
MIT-LICENSE
README.md
Rakefile
TODO
ffi-efl.gemspec

README.md

ffi-efl

by Jérémy Zurcher
http://asynk.ch

Gem Version

DESCRIPTION:

A ruby ffi binding to EFL libraries (Enlightenment Foundation Libraries).

FEATURES/PROBLEMS:

  • support ruby 2.0.0, 1.9.x NOT 1.8.x
  • support EFL 1.8.x
  • binding is almost complete but lacks high level ruby code and tests
  • eldbus is not present yet
  • only works with legacy API (--with-api=legacy or --with-api=both)

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
            size_hint_weight_expand
            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
            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

For more examples you may look at:

REQUIREMENTS:

  • You need a sane EFL installation built with legacy API, goto download for more info.

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 install

RESOURCES:

You can find this project in a few places:

Online repositories:

Gem:

CREDITS:

Special thanks to:

  • Lionel Orry
  • Marius Hanne
  • The EFL team

LICENSE:

MIT see MIT_LICENSE

Something went wrong with that request. Please try again.