On 1/19/07, Gervais Mulongoy <[EMAIL PROTECTED]> wrote:

>From Get-E 
<http://www1.get-e.org/E17_User_Guide/English/_pages/3.7.html>website:

EDJ comes from the word Edje, which is one of the Enlightenment Foundation
Libraries (EFL). Here is a slightly edited (some references related to an
old theme format that's no longer in use in E17 have been removed) quote
from http://www.enlightenment.sourceforge.net :

*"Edje is a complex graphical design & layout library. For the purposes of
Enlightenment 0.17, Edje should serve all the purposes of creating visual
elements (borders of windows, scrollbars, etc.) and allow the designer the
ability to animate, layout and control the look and feel of any program
using Edje as its basic GUI constructor. This library allows for multiple
collections of Layouts in one file, sharing the same image database and thus
allowing a whole theme to be conveneintly packaged into 1 file and shipped
around.*

*Edje separates the layout and behavior logic. Edje files ship with an
image database, used by all the parts in all the collections to source
graphical data. It has a directory of logical part names pointing to the
part collection entry ID in the file (thus allowing for multiple logical
names to point to the same part collection, allowing for the sharing of data
betwene display elements). Each part collection consists of a list of visual
parts, as well as a list of programs. A program is a conditionally run
program that if a particular event occurs (a button is pressed, a mouse
enters or leaves a part) will trigger an action that may affect other parts.
In this way a part collection can be "programmed" via its file as to hilight
buttons when the mouse passes over them or show hidden parts when a button
is clicked somewhere etc. The actions performed in changing from one state
to another ar also allowed to transition over a period of time, allowing
animation.

This separation and simplistic event driven style of programming can
produce almost any look and feel one could want for basic visual elements.
Anything more complex is likely the domain of an application or widget set
that may use Edje as a conveneient way of being able to configure parts of
the display.*"
* *Both themes and backgrounds use this format in E17. This also means
that the EDJ binary background files can, just like E17 themes, contain all
kinds of animations and effects (or just a simple static background that is
scaled to fit the screen).

The basic philosophy of Enlightenment makes too much sense to me, namely
that with a small set of graphic elements and "simplistic" event-driven
behavior, any look and feel and be reproduced. This keeps the programmers
happy in terms of creating applications that have a consistent feel, and it
also keep the graphically inclined happy because they can continuously
tailor the look to suit whatever aesthetic norms rule the day.

Either way, we would not need to resort to the kind of benign tryanny that
is used to develop and maintain the Linux kernel (see Linus orvald), we can
leverage the so-called "open source" community talent to create a complete
UI that flows and whatnot.  Notice that this balance is largely achieved
because of the tools (for example Edje) being used as opposed to enforcing
any specific UI guidelines, at least this is sorta how Enlightenment does
it. It is my belief that in this regard Enlightenment is ahead of both KDE
and Gnome (though KDE is catching up rapidly). We can learn from this.


Regarding have "elected officials", I think we can style development a lot
like how FreeBSD does things, with a set of core developers with armies of
patch artists. The core developers maintain and develop the main OpenMoko
tree or whatever. The patch artists (most likely us) break stuff and report
the bugs preferably with debug traces and patches back to the core. In terms
of who makes up the core, bah, who has the patience to hold elections
hehehe. The core developers need to have a simple mandate, and their
"membership" is recruited to fulfill that mandate. I guess this is where the
elections could be...anyways, I haven't really thought much about this, and
I think I might be raving so its time for a coffee break. Let me know what
you think.

Gervais


Gervais,

I think you have hit the nail on the head so to speak.  Looking closer at
Enlightenment and even OSX they both keep the continuous flow to their UI
not solely because they have a dictator to say what is used and what is not,
but because they have a great common framework that everyone uses for the
UI.  Having a good base framework would not only make developing
applications with a common UI easier, it would also make enhancements such
as themes and other decorations much easier to create allowing for more
people who may not be expert coders to get involved and more innovation.
_______________________________________________
OpenMoko community mailing list
[email protected]
https://lists.openmoko.org/mailman/listinfo/community

Reply via email to