On Friday 16 December 2005 05:47, Essien Ita Essien wrote: > I was playing around with module faces yesterday, trying to understand them > enuff to write about them, and now I have a few questions. > > So far, I see that E seems to keep a series of Managers. Each manager has a > Container which has the evas object we want. > > A lot of modules loop thru *all* the managers and containers to pass to > their _foobar_face_new() calls (even the new e_gadget.c does that). The > calendar module on the other hand just gets the _current_ manager and its > _current_ container and uses that to pass to its _face_new() function. > > My first question is... which is *more* correct (naively, without > understanding much about e's display layer behaviour, I'll think the > calendar module approach, *seems* sensible to me.) >
There is one Manager per X screen, an arbitrary number of Containers per Manager, and an arbitrary number of Zones per Container. Currently, only one container is created per manager, but i _believe_ this could be made configurable (sort of like 'multiple desktops' in e16 -- someone correct me if I'm wrong). One Zone is created per xinerama screen, but you can create your own using the -fake-xinerama-screen option on enlightenment. So, for gadgets, its a matter of policy. Since you probably want them on _all_ desktop surfaces, most modules loop through the managers, and containers to find all the evases and then do the same thing for each one (creating different Faces of the same Gadget). The pager, however, does this per Zone, since it shows the contents of a specific zone. I wrote E_Gadget mostly to wrap this up and abstract it from the module creator. One of the things still missing is an option to decide whether to draw 1 per container or 1 per zone. > My second question came after various frustrated attempts (I admit, I'm not > as bright as I would have you all believe), at getting the test module I > was playing around with to show its edje. What actually happened was... > when I go into "Edit Mode" (after disabling all other modules, so I don't > get confused", I actually see the shape of my module on the desktop. But I > also notice the bottom right hand corner of my edje just peeping in at the > top right hand corner of the screen. The question is... how do you position > the module on the screen? I'm not interested in event objects now, etc, > just a basic face to show up. (and yeah, I've actually not tried to grok > Evas separately at all, so i don't understand how Evas works - yet) > I think you need to set the gadman client's position / size _after_ creating your objects, and setting the change callback. > > Essien Ita Essien > > -- rephorm ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click _______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
