Re: [E-devel] E SVN: sachiel trunk/TMP/st/elementary/src/edje_externals

2010-03-29 Thread Jose Gonzalez
   Gustavo wrote:

 Log:
  Make someone else assume responsibility when Elementary is not the
 father.

   
  It's a shame to see these kinds of things.. One of the arguing
 points for elem was that its objs were evas objs.

 
 

 There might be two hierarchies, both using evas objects. The first is
 the smart object using member_add/del. Edje uses this for instance.
 The second is elementary and its sub objects, that you use to short
 some search paths, define who will get focus. Guarana, for instance,
 has something similar. There are lots of use cases to have two
 hierarchies, often they will be similar, but this is not mandatory.

   
  There will likely be more than one logical tree of objects
 involved in things, since this is a fairly rich setup. Usually
 such appear as various subtrees, as there are things that one
 doesn't want to expose or count in some way (for example when
 things like theming with gfx objects).

  But here we see something a bit different, something due to the
 object/type mechanism used by elem 'widgets' vs. that of evas objects
 in general (and smart membership is just one particular).
  Elem cannot fully wrap all of evas (by design), and conversely
 evas' type system doesn't cover elementary's (also by design).

  Let me give you a simple example of what tends to follow from this.

  You defined an evas 'table' object. It's an evas object of type table.
 But there is also defined an elem 'table' widget, and it's also an evas
 object,
 with widget type also being table.
 

 They are not the same type, Elementary is one smart object type, at
 least so far.
   

   That's the point, that they're not the same object - that there is
'duplication' here even though elem objs 'are' evas objects.
   Either 'table' should not be in evas, or elem can't have its table
widget with certain features.



  But they are not the same evas object, though their behavior and api
 are nearly identical and the elem one uses the evas one.
 

 ehehehe... elm_table precedes evas table, actually evas table was
 written based on the same code and once we have effort to convert
 elm_table users to evas_object_table, we can just remove it :-) Same
 for box. And these can be defined in edje, which is a big plus,
 removing layout completely from C.
   

   I'm aware of the history of table here.. But convert elm_table users
to evas_object_table? Well, that'd take a large rewrite of elem and the
dropping of the ability to edje-theme the table widget and possibly other
stuff.



  Much the same goes for the 'image' evas object vs. the 'image' elem widget
 (except for a possible additional 'edje'), and for the 'box' obj/wid, etc.
 

 well, evas image versus elementary image. They are 2 levels of
 abstraction, each provide its convenience, just like we have textblock
 and text, each with convenience and drawbacks (speed, etc). If you
 look around, all the other systems have the same, maybe they find
 better names, like pixbuf versus image, but at the end, it is the
 same as we have: the low level and faster access, the other is the
 easy to use but more limited.
   

   Yes, and that's exactly what ewl and etk also enabled and you in particular
argued that such things were not going to be needed if your 'widgets' were
evas objects, hence that one should throw away ewl/etk (and related work)
and write a brand new gui-toolkit because of the great benefits of having
the widget objects be exactly evas objects?

   And I argued with you that this was largely nonsense.

   In any case... the point here is that Carsten defined elem to be given
in a certain way. It follows more or less the pattern of edje and also copied
much of what ewl and etk and e17-widgets had.

   The elem widgets are all of a single evas object type, namely of type
elm_widget which is defined via a single generic smart class.
   It then holds stuff particular to each widget 'type' as particulars to
a data pointer held by the generic smart data, and defines its widget 'object'
and 'typing' mechanisms according to such extra data. It's roughly an inversion
of the ewl and etk approach.

  In most respects, this is no better or worse than what ewl/etk had, and
likely worse for aspects related to 'object', 'type', and 'event' systems.
And much worse in terms of api confusion.. You'd be better off eventually
*not* referring to any of the evas api.



  If elem objs being evas objects (and exposing the evas and edje apis),
 is such a good idea.. then, in particular, why the above?
 


Nutrition
Improve your career health. Click now to study nutrition!
http://thirdpartyoffers.juno.com/TGL2141/c?cp=sgQiM36p0DQd45hYMmeEDQAAJ1BkOQx41qXri1ke2A5bHHj8AAYAAADNAAASQwA=

--
Download Intel#174; Parallel Studio Eval
Try the new software tools for 

Re: [E-devel] E SVN: sachiel trunk/TMP/st/elementary/src/edje_externals

2010-03-29 Thread Jose Gonzalez
   Gustavo wrote:

 On Sun, Mar 28, 2010 at 4:19 PM, Rui Miguel Silva Seabra r...@1407.org 
 wrote:
   
 Em 28-03-2010 14:37, Gustavo Sverzut Barbieri escreveu:
 
  But they are not the same evas object, though their behavior and api
 are nearly identical and the elem one uses the evas one.
 
 ehehehe... elm_table precedes evas table, actually evas table was
 written based on the same code and once we have effort to convert
 elm_table users to evas_object_table, we can just remove it :-) Same
 for box. And these can be defined in edje, which is a big plus,
 removing layout completely from C.
   
 Does this mean that we should generically
s/elm_table/evas_object_table/g
 

 I'd recommend a more EFL, efficient and flexible approach: add your
 layout as Edje, inside it define parts of type BOX or TABLE, then in
 elementary:

 layout = elm_layout_add(parent);
 elm_layout_file_set(layout, file, group);
 edje = elm_layout_edje_get(layout);

 then, with edje, you just call pack, append or similar methods. But
 padding, alignment and all are all up to theme. I used this with
 netbook-launcher-efl used by Ubuntu and the result is AWESOME, you can
 have themes so different, with one having a vertical and the other an
 horizontal list, just by defining the list as BOX and adding it inside
 a scroller. :-)
   

   Why bother with apis like edje = elm_layout_edje_get(layout)
when one really just wants to have this 'layout' exhibit some (but not
all) of the edje lib's api. Just expose the desired functions as elm
api functions dealing with the 'layout' widget itself.




Love Spell
Click here to light up your life with a love spell!
http://thirdpartyoffers.juno.com/TGL2141/c?cp=nxftgfBWd5j_VnojKS9sGwAAJ1BkOQx41qXri1ke2A5bHHj8AAYAAADNRwA=

--
Download Intel#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: sachiel trunk/TMP/st/elementary/src/edje_externals

2010-03-29 Thread Gustavo Sverzut Barbieri
On Mon, Mar 29, 2010 at 2:06 AM, Jose Gonzalez jose_...@juno.com wrote:
  Gustavo wrote:

 Log:
  Make someone else assume responsibility when Elementary is not the
 father.



  It's a shame to see these kinds of things.. One of the arguing
 points for elem was that its objs were evas objs.



 

 There might be two hierarchies, both using evas objects. The first is
 the smart object using member_add/del. Edje uses this for instance.
 The second is elementary and its sub objects, that you use to short
 some search paths, define who will get focus. Guarana, for instance,
 has something similar. There are lots of use cases to have two
 hierarchies, often they will be similar, but this is not mandatory.



  There will likely be more than one logical tree of objects
 involved in things, since this is a fairly rich setup. Usually
 such appear as various subtrees, as there are things that one
 doesn't want to expose or count in some way (for example when
 things like theming with gfx objects).

  But here we see something a bit different, something due to the
 object/type mechanism used by elem 'widgets' vs. that of evas objects
 in general (and smart membership is just one particular).
  Elem cannot fully wrap all of evas (by design), and conversely
 evas' type system doesn't cover elementary's (also by design).

  Let me give you a simple example of what tends to follow from this.

  You defined an evas 'table' object. It's an evas object of type table.
 But there is also defined an elem 'table' widget, and it's also an evas
 object,
 with widget type also being table.


 They are not the same type, Elementary is one smart object type, at
 least so far.


  That's the point, that they're not the same object - that there is
 'duplication' here even though elem objs 'are' evas objects.
  Either 'table' should not be in evas, or elem can't have its table
 widget with certain features.



  But they are not the same evas object, though their behavior and api
 are nearly identical and the elem one uses the evas one.


 ehehehe... elm_table precedes evas table, actually evas table was
 written based on the same code and once we have effort to convert
 elm_table users to evas_object_table, we can just remove it :-) Same
 for box. And these can be defined in edje, which is a big plus,
 removing layout completely from C.


  I'm aware of the history of table here.. But convert elm_table users
 to evas_object_table? Well, that'd take a large rewrite of elem and the
 dropping of the ability to edje-theme the table widget and possibly other
 stuff.



  Much the same goes for the 'image' evas object vs. the 'image' elem
 widget
 (except for a possible additional 'edje'), and for the 'box' obj/wid,
 etc.


 well, evas image versus elementary image. They are 2 levels of
 abstraction, each provide its convenience, just like we have textblock
 and text, each with convenience and drawbacks (speed, etc). If you
 look around, all the other systems have the same, maybe they find
 better names, like pixbuf versus image, but at the end, it is the
 same as we have: the low level and faster access, the other is the
 easy to use but more limited.


  Yes, and that's exactly what ewl and etk also enabled and you in particular
 argued that such things were not going to be needed if your 'widgets' were
 evas objects, hence that one should throw away ewl/etk (and related work)
 and write a brand new gui-toolkit because of the great benefits of having
 the widget objects be exactly evas objects?

  And I argued with you that this was largely nonsense.

  In any case... the point here is that Carsten defined elem to be given
 in a certain way. It follows more or less the pattern of edje and also
 copied
 much of what ewl and etk and e17-widgets had.

  The elem widgets are all of a single evas object type, namely of type
 elm_widget which is defined via a single generic smart class.
  It then holds stuff particular to each widget 'type' as particulars to
 a data pointer held by the generic smart data, and defines its widget
 'object'
 and 'typing' mechanisms according to such extra data. It's roughly an
 inversion
 of the ewl and etk approach.

  In most respects, this is no better or worse than what ewl/etk had, and
 likely worse for aspects related to 'object', 'type', and 'event' systems.
 And much worse in terms of api confusion.. You'd be better off eventually
 *not* referring to any of the evas api.

dude, I really ask myself should I continue replying to trolling?,
but this time it is impossible to not: for once in life, read or use
the source before you start trolling! elm_table does not have theme,
neither does box... as there is nothing useful to theme in them :-D

I'll stop here, as the rest of the mail is as pointless, but I had to
troll this as well, couldn't miss that one ;-)


-- 
Gustavo Sverzut Barbieri
http://profusion.mobi embedded systems
--
MSN: barbi...@gmail.com
Skype: 

Re: [E-devel] E SVN: sachiel trunk/TMP/st/elementary/src/edje_externals

2010-03-29 Thread Jose Gonzalez
   Gustavo wrote:

 On Mon, Mar 29, 2010 at 2:06 AM, Jose Gonzalez jose_...@juno.com wrote:
   
  Gustavo wrote:

 
 Log:
  Make someone else assume responsibility when Elementary is not the
 father.


   
  It's a shame to see these kinds of things.. One of the arguing
 points for elem was that its objs were evas objs.


 
 

 There might be two hierarchies, both using evas objects. The first is
 the smart object using member_add/del. Edje uses this for instance.
 The second is elementary and its sub objects, that you use to short
 some search paths, define who will get focus. Guarana, for instance,
 has something similar. There are lots of use cases to have two
 hierarchies, often they will be similar, but this is not mandatory.


   
  There will likely be more than one logical tree of objects
 involved in things, since this is a fairly rich setup. Usually
 such appear as various subtrees, as there are things that one
 doesn't want to expose or count in some way (for example when
 things like theming with gfx objects).

  But here we see something a bit different, something due to the
 object/type mechanism used by elem 'widgets' vs. that of evas objects
 in general (and smart membership is just one particular).
  Elem cannot fully wrap all of evas (by design), and conversely
 evas' type system doesn't cover elementary's (also by design).

  Let me give you a simple example of what tends to follow from this.

  You defined an evas 'table' object. It's an evas object of type table.
 But there is also defined an elem 'table' widget, and it's also an evas
 object,
 with widget type also being table.

 
 They are not the same type, Elementary is one smart object type, at
 least so far.

   
  That's the point, that they're not the same object - that there is
 'duplication' here even though elem objs 'are' evas objects.
  Either 'table' should not be in evas, or elem can't have its table
 widget with certain features.



 
  But they are not the same evas object, though their behavior and api
 are nearly identical and the elem one uses the evas one.

 
 ehehehe... elm_table precedes evas table, actually evas table was
 written based on the same code and once we have effort to convert
 elm_table users to evas_object_table, we can just remove it :-) Same
 for box. And these can be defined in edje, which is a big plus,
 removing layout completely from C.

   
  I'm aware of the history of table here.. But convert elm_table users
 to evas_object_table? Well, that'd take a large rewrite of elem and the
 dropping of the ability to edje-theme the table widget and possibly other
 stuff.



 
  Much the same goes for the 'image' evas object vs. the 'image' elem
 widget
 (except for a possible additional 'edje'), and for the 'box' obj/wid,
 etc.

 
 well, evas image versus elementary image. They are 2 levels of
 abstraction, each provide its convenience, just like we have textblock
 and text, each with convenience and drawbacks (speed, etc). If you
 look around, all the other systems have the same, maybe they find
 better names, like pixbuf versus image, but at the end, it is the
 same as we have: the low level and faster access, the other is the
 easy to use but more limited.

   
  Yes, and that's exactly what ewl and etk also enabled and you in particular
 argued that such things were not going to be needed if your 'widgets' were
 evas objects, hence that one should throw away ewl/etk (and related work)
 and write a brand new gui-toolkit because of the great benefits of having
 the widget objects be exactly evas objects?

  And I argued with you that this was largely nonsense.

  In any case... the point here is that Carsten defined elem to be given
 in a certain way. It follows more or less the pattern of edje and also
 copied
 much of what ewl and etk and e17-widgets had.

  The elem widgets are all of a single evas object type, namely of type
 elm_widget which is defined via a single generic smart class.
  It then holds stuff particular to each widget 'type' as particulars to
 a data pointer held by the generic smart data, and defines its widget
 'object'
 and 'typing' mechanisms according to such extra data. It's roughly an
 inversion
 of the ewl and etk approach.

  In most respects, this is no better or worse than what ewl/etk had, and
 likely worse for aspects related to 'object', 'type', and 'event' systems.
 And much worse in terms of api confusion.. You'd be better off eventually
 *not* referring to any of the evas api.
 

 dude, I really ask myself should I continue replying to trolling?,
 but this time it is impossible to not: for once in life, read or use
 the source before you start trolling! elm_table does not have theme,
 neither does box... as there is nothing useful to theme in them :-D

 I'll stop here, as the rest of the mail is as pointless, but I had to
 troll this as well, couldn't miss that one ;-)
   

 

Re: [E-devel] E SVN: sachiel trunk/TMP/st/elementary/src/edje_externals

2010-03-28 Thread Jose Gonzalez
Gustavo wrote:
 Log:
   Make someone else assume responsibility when Elementary is not the father.
   
   It's a shame to see these kinds of things.. One of the arguing
 points for elem was that its objs were evas objs.
 

 

 There might be two hierarchies, both using evas objects. The first is
 the smart object using member_add/del. Edje uses this for instance.
 The second is elementary and its sub objects, that you use to short
 some search paths, define who will get focus. Guarana, for instance,
 has something similar. There are lots of use cases to have two
 hierarchies, often they will be similar, but this is not mandatory.
   

   There will likely be more than one logical tree of objects
involved in things, since this is a fairly rich setup. Usually
such appear as various subtrees, as there are things that one
doesn't want to expose or count in some way (for example when
things like theming with gfx objects).

   But here we see something a bit different, something due to the
object/type mechanism used by elem 'widgets' vs. that of evas objects
in general (and smart membership is just one particular).
   Elem cannot fully wrap all of evas (by design), and conversely
evas' type system doesn't cover elementary's (also by design).

   Let me give you a simple example of what tends to follow from this.

   You defined an evas 'table' object. It's an evas object of type table.
But there is also defined an elem 'table' widget, and it's also an evas object,
with widget type also being table.
   But they are not the same evas object, though their behavior and api
are nearly identical and the elem one uses the evas one.

   Much the same goes for the 'image' evas object vs. the 'image' elem widget
(except for a possible additional 'edje'), and for the 'box' obj/wid, etc.

   If elem objs being evas objects (and exposing the evas and edje apis),
is such a good idea.. then, in particular, why the above?



Hotel
Hotel pics, info and virtual tours.  Click here to book a hotel online.
http://thirdpartyoffers.juno.com/TGL2141/c?cp=ayO2nx1SAdV5mpUOB7XHmgAAJ1BkOQx41qXri1ke2A5bHHj8AAYAAADNAAATRAA=

--
Download Intel#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: sachiel trunk/TMP/st/elementary/src/edje_externals

2010-03-28 Thread Gustavo Sverzut Barbieri
On Sun, Mar 28, 2010 at 4:45 AM, Jose Gonzalez jose_...@juno.com wrote:
 Gustavo wrote:

 Log:
  Make someone else assume responsibility when Elementary is not the
 father.


  It's a shame to see these kinds of things.. One of the arguing
 points for elem was that its objs were evas objs.


 

 There might be two hierarchies, both using evas objects. The first is
 the smart object using member_add/del. Edje uses this for instance.
 The second is elementary and its sub objects, that you use to short
 some search paths, define who will get focus. Guarana, for instance,
 has something similar. There are lots of use cases to have two
 hierarchies, often they will be similar, but this is not mandatory.


  There will likely be more than one logical tree of objects
 involved in things, since this is a fairly rich setup. Usually
 such appear as various subtrees, as there are things that one
 doesn't want to expose or count in some way (for example when
 things like theming with gfx objects).

  But here we see something a bit different, something due to the
 object/type mechanism used by elem 'widgets' vs. that of evas objects
 in general (and smart membership is just one particular).
  Elem cannot fully wrap all of evas (by design), and conversely
 evas' type system doesn't cover elementary's (also by design).

  Let me give you a simple example of what tends to follow from this.

  You defined an evas 'table' object. It's an evas object of type table.
 But there is also defined an elem 'table' widget, and it's also an evas
 object,
 with widget type also being table.

They are not the same type, Elementary is one smart object type, at
least so far.


  But they are not the same evas object, though their behavior and api
 are nearly identical and the elem one uses the evas one.

ehehehe... elm_table precedes evas table, actually evas table was
written based on the same code and once we have effort to convert
elm_table users to evas_object_table, we can just remove it :-) Same
for box. And these can be defined in edje, which is a big plus,
removing layout completely from C.


  Much the same goes for the 'image' evas object vs. the 'image' elem widget
 (except for a possible additional 'edje'), and for the 'box' obj/wid, etc.

well, evas image versus elementary image. They are 2 levels of
abstraction, each provide its convenience, just like we have textblock
and text, each with convenience and drawbacks (speed, etc). If you
look around, all the other systems have the same, maybe they find
better names, like pixbuf versus image, but at the end, it is the
same as we have: the low level and faster access, the other is the
easy to use but more limited.


  If elem objs being evas objects (and exposing the evas and edje apis),
 is such a good idea.. then, in particular, why the above?




-- 
Gustavo Sverzut Barbieri
http://profusion.mobi embedded systems
--
MSN: barbi...@gmail.com
Skype: gsbarbieri
Mobile: +55 (19) 9225-2202

--
Download Intel#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: sachiel trunk/TMP/st/elementary/src/edje_externals

2010-03-28 Thread Rui Miguel Silva Seabra
Em 28-03-2010 14:37, Gustavo Sverzut Barbieri escreveu:
  But they are not the same evas object, though their behavior and api
 are nearly identical and the elem one uses the evas one.
 
 ehehehe... elm_table precedes evas table, actually evas table was
 written based on the same code and once we have effort to convert
 elm_table users to evas_object_table, we can just remove it :-) Same
 for box. And these can be defined in edje, which is a big plus,
 removing layout completely from C.

Does this mean that we should generically
s/elm_table/evas_object_table/g
?

Rui

--
Download Intel#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] E SVN: sachiel trunk/TMP/st/elementary/src/edje_externals

2010-03-26 Thread Jose Gonzalez
 Log:
   Make someone else assume responsibility when Elementary is not the father.

   It's a shame to see these kinds of things.. One of the arguing
points for elem was that its objs were evas objs.


Small Business Tools
Compete with the big boys.  Click here to find products to benefit your 
business.
http://thirdpartyoffers.juno.com/TGL2141/c?cp=mwMdoXkZsdkXyNYsGb33OgAAJ1AoRuPvi1GlvaxaES1XTMe4AAYAAADNAAARMQA=

--
Download Intel#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: sachiel trunk/TMP/st/elementary/src/edje_externals

2010-03-26 Thread Gustavo Sverzut Barbieri
On Fri, Mar 26, 2010 at 8:46 AM, Jose Gonzalez jose_...@juno.com wrote:
 Log:
   Make someone else assume responsibility when Elementary is not the father.

   It's a shame to see these kinds of things.. One of the arguing
 points for elem was that its objs were evas objs.



There might be two hierarchies, both using evas objects. The first is
the smart object using member_add/del. Edje uses this for instance.
The second is elementary and its sub objects, that you use to short
some search paths, define who will get focus. Guarana, for instance,
has something similar. There are lots of use cases to have two
hierarchies, often they will be similar, but this is not mandatory.

BR,


-- 
Gustavo Sverzut Barbieri
http://profusion.mobi embedded systems
--
MSN: barbi...@gmail.com
Skype: gsbarbieri
Mobile: +55 (19) 9225-2202

--
Download Intel#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel