QEdje
During the weekend I tested briefly QEdje 0.3.0, here are my thoughts:
I have to study some more Edje format and whether QZion is already providing "enough" features for it, please comment if I have missed something obvious here.
- QZion canvas which is used for graphics rendering in QEdje has two implementations: QPainter based and QGraphicsView based, former being currently faster in embedded environments lacking FPU power. QZion API is still very light, containing basic canvas objects (rectangle, image, text) with under 2kLOC / implementation.
- QEdje is the real beef, containing parser for Edje theme files. What I like about Edje format is that it's not based on XML and it still gets compiled into binary mode when deploying, which should minimize the theming performance hit. I tested now only with provided samples, have to check how QEdje handles more complicated Edje themes.
- Thinking why Edje, Evas, E17 etc. haven't become more popular, is the reason technical, just (lack of) community or what?
- My ideas for QEdje developers would be to concentrate more on QGraphicsView backend as it offers more features and should get nice boost with performance improvements in Qt 4.5. Think if inheriting QGraphicsWidgets as QZion objects would offer more than current QGraphicsItems, like layouts and native QWidgets with QGraphicsProxyWidget. IMO Clutter API is currently a good compromize between features and simplicity, so analyze it and copy all suitable ideas into QZion ;-)
I have to study some more Edje format and whether QZion is already providing "enough" features for it, please comment if I have missed something obvious here.
Comments
I found edje really hard to use, around 30 min to make a simple gui with a button and a label.
Too much complex, and it s really lack of an editor which permit to design ui quickly ...
About Edje complexity: Even though Rasterman has tried to keep Edje as an "simple" theming language, it has a bit learning curve for us mortals...
As for editor, try edje_editor in SVN, it's basic but may serve.
At ProFUSION we do not start typing from scratch, we convert[1] from SVG using inkscape2edc or gimp export, then we edit using Emacs + custom mode[2].
[1] http://blog.gustavobarbieri.com.br/2008/09/16/generating-edje-files-using-inkscape-and-gimp/
[2] http://svn.enlightenment.org/svn/e/trunk/edje/data/
That's inconvenient, I know. That's IMHO one of the reasons e17 is not a major player, it's difficult to get up & running (aka: no pre-built packages, releases...)
Thanks for trying!