25
EFL Introduction Openmoko 11/16 2007 Jeremy Chang

Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

EFL Introduction

Openmoko11/16 2007

Jeremy Chang

Page 2: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

Agenda

EFL library introduction Edje  E_dbus Example Discussion Reference

Page 3: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

EFL stack diagram

Page 4: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

EFL library

Each Can be installed independently Each library can be used by itself Some Low level libraries are not graphical Some other libraries add value to Evas  So it should be more like ........

Page 5: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

EFL network diagram

Page 6: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

EFL list

Evas Edje Ecore Eet Embryo Epeg Epsilon

Esmart EWL Imlib2 .......

Page 7: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

Evas

powerful canvas image based, not vector based not resolution independent, but has imlib2 State­aware / Keep track of what is rendered can run on X11,OpenGL, Xrender, framebuffer No need to deal with redraw or repaint makes why EFL speed is fast

Page 8: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

Edje

unique split into UI and logic part makes Animation, effect like CSS and content MVC spirit

Page 9: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

Ecore Like Glib, provide all the low­level stuffs

data structure IPC helper class network ....

glue together other libs not graphical main()

Page 10: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

Eet

single theme compressed file no need to uncompress and install to a directory On the fly

Page 11: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

Embryo

Script language Script the interface (Edje theme) add power to Edje

Page 12: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

Epeg & Epsilon

Thumbnail libraries Epeg

help search Jpeg image only Epsilon

not only Jpeg but also PNG, all other supported by imlib2

even take advantages of Epeg for Jpeg images

Page 13: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

Esmart

Container Transparent Ap helper lib for Edje

Page 14: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

EWL

like GTK+, Qt a widget set based on X protocol

Page 15: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

Imlib2

Image loading Image convert, create, setColor, text draw. Image handling .....

Page 16: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

Emotion

video lib based on xine

Page 17: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

Edje

Page 18: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

Edje

a layout engine Server all the purpose of visual elements for E17 Animation/Effects library an IDL Logic and Appearance separator Theming framework

Page 19: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

Edje Concept

Page 20: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

Some samples

Page 21: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

E_dbus

dbus wrapper, like glib­dbus dbus

raw library – libdbus dbus daemon as a router IPC, freedesktop project purpose:

Session wide System wide

Used with Ecore and E applications

Page 22: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

Usage (for client)

Active poll get connection get proxy create message Send message / call method (marshal) get args of reply message (get return value) unrefer msg, proxy, connection.....

Callback receive signal and handle

Page 23: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

dbus concept

Page 24: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

Discussion

Questions?

Page 25: Openmoko 11/16 2007 Jeremy Changwiki.openmoko.org/images/f/f5/EFL_intro.pdflike CSS and content MVC spirit Ecore Like Glib, provide all the low level stuffs data structure ... 2 even

Reference

EFL Doc/API 

http://web.enlightenment.org/p.php?p=docs&l=en Wiki

http://wiki.enlightenment.org/index.php/Main_Page