Re: [E-devel] Patch for Evil fopen function

2008-10-28 Thread Vincent Torri



On Tue, 28 Oct 2008, Lionel ORRY wrote:


sorry for that. Here it is:

Index: src/lib/Evil.h
===
--- src/lib/Evil.h  (révision 37267)
+++ src/lib/Evil.h  (copie de travail)
@@ -134,7 +134,7 @@
#  define S_IXGRP S_IXUSR
#  define S_IXOTH S_IXUSR

-#  define open(path,...) _open((path),__VA_ARGS__)
+#  define open(path,...) _open((path), _O_BINARY | (__VA_ARGS__) )


can you try this instead:

#  define open(path, flag, ...) _open((path), _O_BINARY | (flag), ##args)

?

Vincent-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [PATCH] Evas: Abstract the engine calls

2008-10-28 Thread Jose Gonzalez
   Jorge wrote:

> Hi all,
>
> Here i attach a patch that wraps all the calls to
> obj->layer->evas->engine.func inside the objects into a function
> itself. So instead of doing evas->engine.func->image_border_set you
> should call evas_engine_image_border_set. It looks like a cosmetic
> patch, but is the base for a larger rewrite of Evas internals.
>
> As Jose has been saying (and myself) for some time now, Evas *needs* a
> refactor on its internals, this is the first step in the path to allow
> objects to be built outside Evas which will imply to build a good and
> defined interface between objects, engines and the canvas system.
> Right now the evas_engine_xxx functions are just on a private header,
> later those can be as well exported and let users build their own
> objects based on this accelerated primitives.
>
> I can commit myself this patch (the text objects are still missing
> btw), but i prefer to know your impressions before.
>
>   

   I've argued one side of the coin on this issue of an extensible mechanism
for evas objects which can get 'close-in' for better efficiency and flexibility,
and suggested a simple initial approach that can be realized now... But let me
also argue another side of this coin and reply in part to your proposal here.

   One reason I've not mentioned this much recently (til now when I saw carsten
and gustavo wanting to add new objs and their apis to evas lib proper) is that
it does have its 'issues' with current evas.
   Basically, evas is still too immature in many ways and just not ready to 
'export'
much of anything - not unless you're willing to constantly keep up with possible
changes of various sorts.

   This is why I suggested an initial approach that does require objs to be 
built
against evas internals (much like e17 modules). I'd leave a more advanced 
approach
which exposes some kind of (stable) abstract immediate-mode gfx api, or 
whatever,
for later when things are well-defined enough.

   In other words, I'd suggest a two-tier approach for evas object 
extensibility,
object modules say (which do require access to evas internals) and obj plugins
say (which can be defined without such access).
   From a user's point of view though, there's no difference between these two..
one still needs to include the headers for the obj (or lib of objs) that one 
wants
to use.

   Another 'issue' to keep in mind here is how well the rest of the current efl
can adopt/adapt to such a new capability. It can potentially bring a wealth of
stuff, but only to those libs/apps which have some ability to incorporate 
extensible/
pluggable/modular aspects without too much trouble.
   Take edje for example. There are several ways one can get it to use such evas
obj extensibility.. the more direct ways would take quite a bit of work, but 
one can
do it fairly easily if one adopts various indirect ways - eg. have a generic 
OBJECT
part which references its own description, which in turn could either be in a 
separate
file (possibly even using a different format than edc), or in some part of the 
eet
itself. The descriptions would then be loaded/realized by associated edje 
plugins
that know about the type of object being dealt with. etc, etc.

   In any case, I really don't know exactly what you envision here for later so 
I can't
really say much more about your proposal.. except that I'd be concerned about 
exporting
evas engine functions in any serious way. Maybe you could some more specific 
details
as to what you have in mind for things here?
 

PS.
   I can give you more details on what I've already suggested, even send you a 
version
if you like, but it's really very simple as I've already described before.. 
it's simple
largely because it demands that the object modules have access to evas 
internals.
   It'll give evas extensibility - one way of realizing object modules - but at 
the price
of this dependence, and if the internals change enough then your object may 
become crap.
So, it means such objs always have to keep up with the evas version and be 
updated, ie.
much as is happening now with evas engines from my attempts to extend its gfx 
capabilities.


Free information - Learn about Beauty School. Click now!
http://thirdpartyoffers.juno.com/TGL2141/fc/Ioyw6i3oLm4N6idRExqGifE53NLvrOcAwe4i3OV0CdvbkdYJloqjLj/

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: raster trunk/evas/src/lib/canvas

2008-10-28 Thread Christopher Michael
Go Sachiel :)

dh

Enlightenment SVN wrote:
> Log:
>   another sachiel fix! :)
>   
>   
> Author:   raster
> Date: 2008-10-28 20:29:10 -0700 (Tue, 28 Oct 2008)
> New Revision: 37292
> 
> Modified:
>   trunk/evas/src/lib/canvas/evas_object_textblock.c 
> 
> Modified: trunk/evas/src/lib/canvas/evas_object_textblock.c
> ===
> --- trunk/evas/src/lib/canvas/evas_object_textblock.c 2008-10-29 01:51:45 UTC 
> (rev 37291)
> +++ trunk/evas/src/lib/canvas/evas_object_textblock.c 2008-10-29 03:29:10 UTC 
> (rev 37292)
> @@ -1788,12 +1788,16 @@
>  
> if ((repch) && (n->text))
>   {
> - int i, len = strlen(n->text), chlen;
> + int i = 0, len = 0, chlen;
> + char *ptr;
>  
> + while (evas_common_font_utf8_get_next(n->text, &i))
> +   len++;
>   chlen = strlen(repch);
>   str = alloca((len * chlen) + 1);
> - for (i = 0; i < len; i += chlen)
> -   strcpy(&(str[i]), repch);
> + for (i = 0, ptr = str; i < len; ptr += chlen, i++)
> +   memcpy(ptr, repch, chlen);
> + *ptr = 0;
>   }
> else
>   str = n->text;
> 
> 
> -
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> ___
> enlightenment-svn mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/enlightenment-svn
> 


-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] can't focus on swallowed part (Gustavo Sverzut Barbieri) (Gustavo Sverzut Barbieri)

2008-10-28 Thread dongmei zhou
hi,
I  post  the working example , when I clicked the "restaurant"  icon ,
it will  entry   the   sub   menu   interface  , then  when  I  clicked
  all  the  sub  menu  icon  ("today" , "history" , "future")  it  will  all
receive  the  signal  in  "sub_menu_contents"  part,  so  I  can't  deal
with  the  special sub menu  icon.  what  can  do  it ?

  2008/10/28 Gustavo Sverzut Barbieri <[EMAIL PROTECTED]
>
> First, try to send plain text mails, doing html/rich text is hard to use.
>
> On Tue, Oct 28, 2008 at 9:51 AM, dongmei zhou <[EMAIL PROTECTED]>
> wrote:
> >
> > hi,
> >   I just want to when  I clicked the swallowed  part  It can handle
>  the
> > event  according  to the  special  icon  part.
> >
> >  a simple code :
> >
> >
> >self.restaurant_icon=edje.Edje(self.ee.evas,
> >
> > file=self.edje_file,
> >
> > group="restaurant_menu")
> >
> > self.restaurant.part_swallow("contents",self.restaurant_icon)
> >
> >
> > self.main_group.part_swallow("sub_menu_contents",self.restaurant)
> >#self.main_group.member_add(self.restaurant) (this
> > line  code not work well )
>
> This is because it's wrong. When you swallow, edje automatically
> member_add that object, if you member_add it to main_group it will be
> reparented and screw.
>
> >
>  self.restaurant.signal_emit("transition,in",source)
>
> what's this good for?
>
>
> > self.main_group.part_object_get("sub_menu_contents").focus =True
> >self.main_group.focus =False
>
> again, mouse actions have nothing to do with focus. focus is just for
> keyboard actions and you need to use
> event_callback_add(EVAS_CALLBACK_KEY_DOWN, ...)
>
>
> >   so  when I clicked  the  restaurant  icon ,  I  can get  the
> > "sub_menu_contents"  clicked signal , then I can SIGNAL_EMIT   the  "xx
> > restaurant icon  clicked  "  signal ,but   I don't   know   how  to
> > recognize  which  icon  is  clicked  ,  I  want to  try  the  mouse_grab
>  :
>
> without your edje it's hard to figure out what your doing wrong. Your
> code is also not enough, since nowhere you connect signals, so maybe
> you are connecting to the wrong object. Please post a working test
> (.py + .edc) somewhere. I'm not asking you to publish your real code,
> but a working example of the problem. write it as simple as possible,
> use rectangles to avoid sending pictures.
>
> >   self.restaurant.mouse_grab_set( )  but It can't work
>
> it have nothing to do with that work.
>
> It's hard to help without information, sorry.
>
> --
> Gustavo Sverzut Barbieri
> http://profusion.mobi embedded systems
> --
> MSN: [EMAIL PROTECTED]
> Skype: gsbarbieri
> Mobile: +55 (19) 9225-2202
>
-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] Efreet mime default application patch

2008-10-28 Thread Dave Andreoli

- "Nick Hughart" <[EMAIL PROTECTED]> ha scritto:

> This is not yet an fdo specification so I'm not going to put it in
> just 
> yet.  It seems to have promise and is a fairly simple format, but for
> 
> now we have our own methods of choosing default applications and it is
> 
> similar to how they choose as well (given the user is not making this
> 
> file on their own). 
> 
> When opening a file in EFM, if that mimetype has not been opened 
> previously you will be given a list of apps that support that mimetype
> 
> and a list of all apps as well just in case.  Once you have chosen an
> 
> app, EFM remembers this and will use that app until you pick a
> different 
> app by using Open With.  So for now we have our own methods of doing 
> this, but if it does become a specification it may be good to adopt
> this 
> as it would help with those doing packaging and distribution.

Where EFM store the user preference, is it possible to others to access
this data? 
I think we need a centralised way to keep this information, or the user
need to choose a preferred application for every apps/module that need
to open a filemanager or a browser.
I know this is not a standard yet. But this doesn't mean we can't have
our method to storing this user preference.

I have also done a module that add a configuration dialog to set your
preferred apps. Its very simple, but it make no sense if there are
not a shared place to store the informations.
Don't you think this is a must have module??

So IMHO we need to define witch is the E way to store the mime/application
associations, and have the code in some lib (maybe not efreet for now).
In this way we can have all the apps/module work the same way and we 
can also change the lib to fit a final freedesktop standard without 
touching modules.
If we don't do this now all the apps/modules will do the associations 
in a different way and when the fdo standard will become a reality we 
need to redo everything.

Regards 
Dave

> 
> Dave Andreoli wrote:
> > ...and the attachment ;)
> > the patch is to be applied in the main efreet directory.
> >
> > Dave
> >
> > - "Dave Andreoli" <[EMAIL PROTECTED]> ha scritto:
> >
> >   
> >> Hi all
> >> This is a relly small patch that add 2 functions to Efreet_Mime.
> >>
> >> EAPI const char*
> >> efreet_mime_default_application_get(const char *mime)
> >>
> >> EAPI void
> >> efreet_mime_default_application_set(const char *mime, const char
> >> *desktop)
> >>
> >> The _get function take a mime-type (as 'text/html') and return the
> 
> >> name of the desktop file (as 'Firefox.desktop') that should be 
> >> used to open the given mime-type. The information is readed from
> >> the $XDG_DATA_DIRS/applications/defaults.list file, first the 
> >> user preference file is checked than the system wide.
> >> The second one set the preference in the user defaults.list file.
> >>
> >> With this functions all the applications that use efreet can know
> >> witch
> >> is the default program to use to open a given mime-type.
> >>
> >> Hope you like it
> >> Dave
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> -
> >> This SF.Net email is sponsored by the Moblin Your Move Developer's
> >> challenge
> >> Build the coolest Linux based applications with Moblin SDK & win
> great
> >> prizes
> >> Grand prize is a trip for two to an Open Source event anywhere in
> the
> >> world
> >> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> >> ___
> >> enlightenment-devel mailing list
> >> enlightenment-devel@lists.sourceforge.net
> >> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >>     
> >>
> 
> >>
> >>
> -
> >> This SF.Net email is sponsored by the Moblin Your Move Developer's
> challenge
> >> Build the coolest Linux based applications with Moblin SDK & win
> great prizes
> >> Grand prize is a trip for two to an Open Source event anywhere in
> the world
> >> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> >>
> 
> >>
> >> ___
> >> enlightenment-devel mailing list
> >> enlightenment-devel@lists.sourceforge.net
> >> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://l

[E-devel] [PATCH] e_fm: fix single-click on folders

2008-10-28 Thread thomasg
Hi,

the attached patch fixes the single-click feature of e_fm, so you can use
single-click on folders, not just on files.
It also removes the strdup in the affected functions that seems useless
here.

Would be nice if someone could check/review and commit it.

Greetings,

thomasg
Index: e_fm.c
===
--- e_fm.c  (Revision 37249)
+++ e_fm.c  (Arbeitskopie)
@@ -5136,18 +5136,17 @@
  {
/* if its a directory && open dirs in-place is set then change the dir
 * to be the dir + file */
-   if ((S_ISDIR(ic->info.statinfo.st_mode)) && 
+   if (
+   (S_ISDIR(ic->info.statinfo.st_mode)) && 
(ic->sd->config->view.open_dirs_in_place) &&
(!ic->sd->config->view.no_subdir_jump) &&
(!ic->sd->config->view.single_click)
)
  {
-char buf[4096], *dev = NULL;
+char buf[4096];
 
-if (ic->sd->dev) dev = strdup(ic->sd->dev);
 snprintf(buf, sizeof(buf), "%s/%s", ic->sd->path, ic->info.file);
-e_fm2_path_set(ic->sd->obj, dev, buf);
-E_FREE(dev);
+e_fm2_path_set(ic->sd->obj, ic->sd->dev, buf);
  }
else
  evas_object_smart_callback_call(ic->sd->obj, "selected", NULL);
@@ -5170,7 +5169,7 @@
 ic->drag.dnd = 0;
 ic->drag.src = 1;
  }
-   _e_fm2_mouse_1_handler(ic, 0, ev->modifiers);
+ _e_fm2_mouse_1_handler(ic, 0, ev->modifiers);
  }
else if (ev->button == 3)
  {
@@ -5195,6 +5194,24 @@
 ic->drag.start = 0;
ic->drag.dnd = 0;
ic->drag.src = 0;
+
+if (
+   (S_ISDIR(ic->info.statinfo.st_mode)) &&
+(ic->sd->config->view.open_dirs_in_place) &&
+(!ic->sd->config->view.no_subdir_jump) &&
+(ic->sd->config->view.single_click)
+)
+  {
+ char buf[4096];
+
+ snprintf(buf, sizeof(buf), "%s/%s", ic->sd->path, ic->info.file);
+ e_fm2_path_set(ic->sd->obj, ic->sd->dev, buf);
+  }
+else if ((S_ISDIR(ic->info.statinfo.st_mode)) && 
(ic->sd->config->view.single_click))
+  evas_object_smart_callback_call(ic->sd->obj, "selected", NULL);
+
+
+
  }
ic->down_sel = 0;
 }
-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] Patch for Evil fopen function

2008-10-28 Thread Lionel ORRY
sorry for that. Here it is:

Index: src/lib/Evil.h
===
--- src/lib/Evil.h  (révision 37267)
+++ src/lib/Evil.h  (copie de travail)
@@ -134,7 +134,7 @@
 #  define S_IXGRP S_IXUSR
 #  define S_IXOTH S_IXUSR

-#  define open(path,...) _open((path),__VA_ARGS__)
+#  define open(path,...) _open((path), _O_BINARY | (__VA_ARGS__) )
 #  define close(fd) _close(fd)
 #  define read(fd,buffer,count) _read((fd),(buffer),(count))
 #  define write(fd,buffer,count) _write((fd),(buffer),(count))

Thanks & regards,
Lionel

2008/10/28 Vincent Torri <[EMAIL PROTECTED]>:
>
> Hey,
>
>> here is a tiny patch to make the open() function from Evil.h closer to
>> the real posix open() function. Without the _O_BINARY flag, the opened
>> filestream is postprocessed under Windows, which leads to unexpected
>> carriage returns in binary files, such as in eet files for example.
>>
>> Thanks for reviewing and applying if possible.
>
> I think that SF removed the attached file. If the patch is tiny, just put it
> in the body of the mail, it will be sufficient
>
> thank you
>
> Vincent
>

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: barbieri IN trunk/evas/src/lib: . canvas

2008-10-28 Thread Jose Gonzalez
Gustavo wrote:
>
>   
  Ok, let me pose this this from a different view.. let's not worry about
 whether
 or not such 'layout' or 'widgetry' or 'special-purpose' or whatever kinds
 of
 objects
 should be added to the evas lib *api* -- I don't think they should in
 some
 cases,
 but that's partly incidental here.

  There will be a need for such kinds of objects, and others... things
 like
 custom
 self-rendered objs (possibly relying on other libs and apsects that those
 libs allow)
 that are best implemented at the 'evas level' for efficiency reasons and
 whatnot.
 It's just a matter of where their implementation should be, how to
 realize
 them..
 and how to expose their apis.

  So, let's discuss the underlying issue that I think is what should be
 addressed
 here - namely, that of evas' "extensibility" at least as far as object
 types
 goes.

  Would one want things like "object modules", or libs of them, for giving
 evas
 that kind of of flexibility and extensibility at a low enough level?

  Well, one could certainly obtain the kinds of objs you want here, quite
 trivially
 really, and have them implemented by some lib.. even by edje itself say.
 And
 you
 could have things like a 'cairo' or an 'svg' object (which for certain
 engines
 could be done more 'directly' then via having these render to an argb
 buffer), and
 you could have say an 'ogre3d' object, or maybe a 'gstreamer' obj, or a
 video obj,
 or many, many things... and not have to worry about these being 'added'
 to
 the
 evas lib's api, or imposing a hard dependence on them by evas.. and yet,
 they can be
 implemented at the 'evas' level (possibly having them need access to evas
 internals
 at first, as I quickly outlined in an erlier email, and maybe further
 refined into
 a more abstract mechanism later if desired).

  So, as a question: Would this kind of extensibility for evas be
 something
 desired?

 
>>> of course yes
>>>
>>>
>>>   
 What concrete things could you do with this?

 
>>> with your approach, that you're trying to push for some time now, you
>>> can do anything you want, so lots of stuff.
>>>
>>>
>>>
>>>   
>>  I haven't been trying to 'push' any particular approach.. just pointing out
>> a simple
>> one that can be realized now if desired. And frankly, I'm not sure I'd
>> bother to
>> work it out given your attitude on it. I sure as hell don't need it for
>> anything.
>> 
>
> Hey Jose, don't take this personally. Everybody tries to push their
> own point of view everywhere, it's not something bad. You were trying
> to push transforms that way you said, I liked the idea but thought it
> would never happened, you proved me wrong and showed your code. Again,
> I like this idea but don't see it happening, prove me wrong again! :-)
>
>
>   

   I'm not trying to 'push' anything into evas.. never have. I've never 
even wanted cvs/svn access.
I do have my views as to what I think is a 'good idea' and conversely, 
but I prefer to make the
reasons for those views open for discussion and let people see if they 
want it, and leave it up
to Carsten to make the choice - for evas' better or worse, that's what 
I've decide is best for *my*
interaction with this project.
   You see Gustavo, if I really personally *want* something in evas or 
whatever else, I can just
do it myself, my system - I don't need someone to do it for me.. and 
very rarely do I suggest
stuff here that I haven't already done in some form or another.
 
  Is it a 'better' way to 'add' special/custom objs to evas then always
 worrying
 about whether or not to extend the evas lib's api with this or that 'one'
 useful obj?

 
>>> yes, seems that we all know about that. BUT, nothing done. Enesim was
>>> the way to go for that and is halted. All in all, we need manpower to
>>> provide this extensible and very optimized immediate rendering api so
>>> we can allow other things to render to Canvas, and we also need to
>>> change the rendering pipeline, because we need more hints in the case
>>> objects can render to outside their bounding box.
>>>
>>>
>>>   
>>  No. This has nothing to do with enesim or any other immediate-mode
>> rendering
>> lib. It's about evas providing an extension mechanism of some sort - and
>> here
>> in particular it's about a simple mechanism that imposes no policy on the
>> implementations.
>> 
>
> As we already have an extension mechanism called smart, I'm sure
> you're talking about objects that draw new primitives. If so, don't
> play the fool, we know that for that we need to expose somehow the
> drawing primitives and in that case a 'immediate rendering api".
>
>   

  You don't *need* to expose any drawing primitive

Re: [E-devel] Patch for Evil fopen function

2008-10-28 Thread Vincent Torri

Hey,

> here is a tiny patch to make the open() function from Evil.h closer to
> the real posix open() function. Without the _O_BINARY flag, the opened
> filestream is postprocessed under Windows, which leads to unexpected
> carriage returns in binary files, such as in eet files for example.
>
> Thanks for reviewing and applying if possible.

I think that SF removed the attached file. If the patch is tiny, just put 
it in the body of the mail, it will be sufficient

thank you

Vincent

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] Patch for Evil fopen function

2008-10-28 Thread Lionel ORRY
Hello,

here is a tiny patch to make the open() function from Evil.h closer to
the real posix open() function. Without the _O_BINARY flag, the opened
filestream is postprocessed under Windows, which leads to unexpected
carriage returns in binary files, such as in eet files for example.

Thanks for reviewing and applying if possible.

regards,
Lionel
-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] IMLIB2 ported to mingw+msys

2008-10-28 Thread carlo.bramix
Hello,
I got the sources of your newly released Imlib2 1.4.2 and I did again the fixes 
for Mingw+Msys.
I think I also fixed my bugs with:
1) bad mmap() detection
2) wrong use of HAVE_SIGJMP_BUF instead of HAVE_SIGSETJMP.
3) all my files are in unix format.
I tested Imlib2 with:
- Mingw+Msys
- Cygwin
- Linux Debian 4.0r3
and everything seems to be working.
Attached patch includes all those fixes.

Sincerely,

Carlo Bramini.


-- Initial Header ---

>From  : "Kim Woelders" [EMAIL PROTECTED]
To  : "Vincent Torri" [EMAIL PROTECTED],"carlo\.bramix" [EMAIL 
PROTECTED]
Cc  : "enlightenment-devel" enlightenment-devel@lists.sourceforge.net
Date  : Thu, 16 Oct 2008 17:38:41 +0200
Subject : Re: [E-devel] IMLIB2 ported to mingw+msys

> On Wed, 15 Oct 2008 13:29:10 +0200, Vincent Torri <[EMAIL PROTECTED]>
> wrote:
>
> >
> >
> > On Wed, 15 Oct 2008, carlo\.bramix wrote:
> >
> >> Hello,
> >>
> >>> I have already implemented some of the functions you need in a lib 
> >>> called
> >>> 'Evil' (mmap, dlfcn, pwd.h, mkstemp,...). I use it for the EFL Windows
> >>> (XP
> >>> or Ce) port. Maybe you could look at my code, improve it if you think
> >>> it's
> >>> needed, and make imlib2 Windows port depending on Evil
> >>>
> If all that's needed is included in the patch I think it's a bit much to
> have to depend on another (unreleased) library.
>
> >>> Otherwise, i would say that you need to add AC_LIBTOOL_WIN32_DLL in
> >>> configure.ac too so that libtool is aware that you have a Windows port.
> >>
> >> Sorry, my fault, I forgot to tell you that I also upgraded to a newer
> >> version these files:
> >>
> >> config.guess
> >> config.sub
> >> depcomp
> >> install-sh
> >> ltmain.sh
> >> missing
> >>
> These should all be generated when running ./autogen.sh.
>
> >> AC_LIBTOOL_WIN32_DLL seems deprecated and I think this could be the 
> >> reason because it works fine here on my PC.
> >> It's not a problem to add it anyways.
> >
> > it's deprecated but the new way to do it requires a "recent" version of
> > libtool (>= 1.9b, more precisely). You can say that that version was
> > released in 2004 and we are in 2008. I have absolutely no problem in 
> > using
> > the new way to do that, but as it is Kim who uses really imlib2 in e16, I
> > would wait for his opinion about using or not a recent version of
> > libtool.
> >
> I don't think imlib2 should depend on a libtool version > 1.5.x.
>
> >> I also forgot to add $LT_LDFLAGS into src/modules/filters/Makefile.am
> >> (my mistake): it is not possible to create shared libs without that
> >> flag, I discovered it only when I checked the content of /lib directory
> >> after I did the "make install", if I must provide a new patch with this
> >> little fix, just let me know.
> >
> Yes, please.
>
> > that should be the new way of doing things with libtool.
> >>
> >> Please also excuse my ignorance, but I have not found a package called
> >> EFL into download page at sourceforge...
> >
> > EFL means Enlightenment fundation libraries. It is a set of libraries
> > that
> > e17 uses (eet, evas, ...).
> >
> >> actually I was just trying to
> >> build IMLIB2 because libcaca checked if it was available. I tried to do
> >> it in the simplest manner (especially because I'm a developer for
> >> Windows and not very expert with unix stuff)>
> >
> > You interest me ! I am searching some help for the Windows port of the
> > EFL, especially because I'm not a Windows developper. If you want to join
> > the task force (and if you have time, of course), I would be glad to have
> > someone more on that port :)
> >
> > Anyway, I think that this port should be done in the same way than the
> > other EFL. Using Evil means that the Windows code it located at one place
> > only. Less things to fix. And I would be happy if you have time to review
> > the code in Evil :)
> >
> > regards
> >
> > Vincent
> >
> Basically I'm fine with these changes. However:
>
> - We should make a 1.4.2 release of current svn before doing this.
>
> - tga support wasn't built when I tested (no configure arguments), I think
> the HAVE_MMAP test is wrong.
>
> - In configure.in (which has been renamed to configure.ac) you set
> HAVE_SIGSETJMP but in loader_jpeg.c you use HAVE_SIGJMP_BUF.
>
> - Some dos style  line endings have crept in (e.g. loader_gif.c).
>
> /Kim
>
diff -r -u imlib2-1.4.2-old/config.h.in imlib2-1.4.2-new/config.h.in
--- imlib2-1.4.2-old/config.h.in2008-10-21 03:02:04 +
+++ imlib2-1.4.2-new/config.h.in2008-10-27 21:03:34 +
@@ -18,6 +18,18 @@
 /* Define to 1 if you have the  header file. */
 #undef HAVE_MEMORY_H
 
+/* Define to 1 if you have the `mkstemp' function. */
+#undef HAVE_MKSTEMP
+
+/* Define to 1 if you have a working `mmap' system call. */
+#undef HAVE_MMAP
+
+/* Define to 1 if you have the  header file. */
+#undef HAVE_PWD_H
+
+/* Define if sigsetjmp is available. */
+#undef HAVE_SIGSETJMP
+
 /* Define to 1 if you have the  header file. */
 #undef 

Re: [E-devel] E SVN: barbieri IN trunk/evas/src/lib: . canvas

2008-10-28 Thread Gustavo Sverzut Barbieri
On Tue, Oct 28, 2008 at 11:11 AM, Jose Gonzalez <[EMAIL PROTECTED]> wrote:
>  Gustavo wrote:
>
>> On Tue, Oct 28, 2008 at 6:05 AM, Jose Gonzalez <[EMAIL PROTECTED]> wrote:
>>
>>>
>>>  Gustavo wrote:
>>>
>>>
>>
>> This code is part of our effort to unify common code into base libs,
>> where its worth to avoid duplicating code over and over again.
>>
>> With that in Evas, we can now expose it in Edje and use it in Guarana
>> and Elementary and possible any other toolkit. It uses Evas_Object's
>> size hints infrastructure, but can be extended to have its own
>> properties if one wish.
>>
>> Attached is a test case and example. You can try to hack your own
>> fancy layout function, it's it's generic and useful to others, add it
>> to evas as well (Like layout using a Bezier or any other path).
>>
>> People implementing Ecore Evas can now use layout "stack" and
>> ecore_evas_object_associate() to provide the "main window" concept,
>> just add your background and then your object to the evas_object_box
>> and associate this box to the window. If you want your background to
>> scale in both directions, just set it's aligns to -1.0 and -1.0.
>>
>>
>>
>>
>
>  This is the kind of thing that I hoped evas would avoid tending to,
> and
> yet both raster and gustavo seem prone to want to get into. :(
>  I know it's tempting to add more and more specialized layout/widgetry
> 'objects' to the core evas lib/api, but I think it's a big mistake for
> evas
> in the long run.
>
>  It's not hard to start extending evas *and* edje to allow for custom
> objects,
> even if at first all such object modules need to access evas internals.
> Adding
> these kinds of things, whether text-grid objs, or box objs, or table
> objs,
> etc..
> directly into the evas lib api is likely to become 'not a good idea'.
>
>

 this requires no access to internals, it's just a helper to avoid
 spreading this code everywhere (e_box, guarana, elementary, etk...).

 the point is, raster always planned to have dynamic layout options in
 Edje, so it's possible to specify in Edje if you want a stack,
 vertical or horizontal layout and in code you add the objects. To add
 this we need this kind of code. We could create yet another library
 (like split esmart into edje independent and dependent code) and add
 this there, make edje dependent on it, but it will be lot of work to
 get a simple and useful code in.

 Since evas already have internal libs in it, at some point we can
 create a libevas_utils and users can optionally link to it. That way
 we keep things in a common place and avoid extra overhead.

 Our point is to do now what others should have done already: unify
 stuff. Size hints, box, editable text block and these stuff should go
 in Evas and make it easy to share stuff and easier to use EFL.  I
 always hear, at least from ETK, that some things were re-done in ETK
 just to work around some problems in Evas or Edje, I consider that
 wrong, these stuff should be fixed there, and that's what we're doing.



>>>
>>>  Ok, let me pose this this from a different view.. let's not worry about
>>> whether
>>> or not such 'layout' or 'widgetry' or 'special-purpose' or whatever kinds
>>> of
>>> objects
>>> should be added to the evas lib *api* -- I don't think they should in
>>> some
>>> cases,
>>> but that's partly incidental here.
>>>
>>>  There will be a need for such kinds of objects, and others... things
>>> like
>>> custom
>>> self-rendered objs (possibly relying on other libs and apsects that those
>>> libs allow)
>>> that are best implemented at the 'evas level' for efficiency reasons and
>>> whatnot.
>>> It's just a matter of where their implementation should be, how to
>>> realize
>>> them..
>>> and how to expose their apis.
>>>
>>>  So, let's discuss the underlying issue that I think is what should be
>>> addressed
>>> here - namely, that of evas' "extensibility" at least as far as object
>>> types
>>> goes.
>>>
>>>  Would one want things like "object modules", or libs of them, for giving
>>> evas
>>> that kind of of flexibility and extensibility at a low enough level?
>>>
>>>  Well, one could certainly obtain the kinds of objs you want here, quite
>>> trivially
>>> really, and have them implemented by some lib.. even by edje itself say.
>>> And
>>> you
>>> could have things like a 'cairo' or an 'svg' object (which for certain
>>> engines
>>> could be done more 'directly' then via having these render to an argb
>>> buffer), and
>>> you could have say an 'ogre3d' object, or maybe a 'gstreamer' obj, or a
>>> video obj,
>>> or many, many things... and not have to worry about these being 'added'
>>> to
>>> the
>>> evas lib's api, or imposing a hard dependence on them by evas.. and yet,
>>> they

Re: [E-devel] can't focus on swallowed part (Gustavo Sverzut Barbieri) (Gustavo Sverzut Barbieri)

2008-10-28 Thread Gustavo Sverzut Barbieri
First, try to send plain text mails, doing html/rich text is hard to use.

On Tue, Oct 28, 2008 at 9:51 AM, dongmei zhou <[EMAIL PROTECTED]> wrote:
>
> hi,
>   I just want to when  I clicked the swallowed  part  It can handle  the
> event  according  to the  special  icon  part.
>
>  a simple code :
>
>
>self.restaurant_icon=edje.Edje(self.ee.evas,
>
> file=self.edje_file,
>
> group="restaurant_menu")
>
> self.restaurant.part_swallow("contents",self.restaurant_icon)
>
>
> self.main_group.part_swallow("sub_menu_contents",self.restaurant)
>#self.main_group.member_add(self.restaurant) (this
> line  code not work well )

This is because it's wrong. When you swallow, edje automatically
member_add that object, if you member_add it to main_group it will be
reparented and screw.

>self.restaurant.signal_emit("transition,in",source)

what's this good for?


> self.main_group.part_object_get("sub_menu_contents").focus =True
>self.main_group.focus =False

again, mouse actions have nothing to do with focus. focus is just for
keyboard actions and you need to use
event_callback_add(EVAS_CALLBACK_KEY_DOWN, ...)


>   so  when I clicked  the  restaurant  icon ,  I  can get  the
> "sub_menu_contents"  clicked signal , then I can SIGNAL_EMIT   the  "xx
> restaurant icon  clicked  "  signal ,but   I don't   know   how  to
> recognize  which  icon  is  clicked  ,  I  want to  try  the  mouse_grab  :

without your edje it's hard to figure out what your doing wrong. Your
code is also not enough, since nowhere you connect signals, so maybe
you are connecting to the wrong object. Please post a working test
(.py + .edc) somewhere. I'm not asking you to publish your real code,
but a working example of the problem. write it as simple as possible,
use rectangles to avoid sending pictures.

>   self.restaurant.mouse_grab_set( )  but It can't work

it have nothing to do with that work.

It's hard to help without information, sorry.

-- 
Gustavo Sverzut Barbieri
http://profusion.mobi embedded systems
--
MSN: [EMAIL PROTECTED]
Skype: gsbarbieri
Mobile: +55 (19) 9225-2202

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: barbieri IN trunk/evas/src/lib: . canvas

2008-10-28 Thread Jose Gonzalez
   Gustavo wrote:

> On Tue, Oct 28, 2008 at 6:05 AM, Jose Gonzalez <[EMAIL PROTECTED]> wrote:
>   
>>  Gustavo wrote:
>>
>> 
> This code is part of our effort to unify common code into base libs,
> where its worth to avoid duplicating code over and over again.
>
> With that in Evas, we can now expose it in Edje and use it in Guarana
> and Elementary and possible any other toolkit. It uses Evas_Object's
> size hints infrastructure, but can be extended to have its own
> properties if one wish.
>
> Attached is a test case and example. You can try to hack your own
> fancy layout function, it's it's generic and useful to others, add it
> to evas as well (Like layout using a Bezier or any other path).
>
> People implementing Ecore Evas can now use layout "stack" and
> ecore_evas_object_associate() to provide the "main window" concept,
> just add your background and then your object to the evas_object_box
> and associate this box to the window. If you want your background to
> scale in both directions, just set it's aligns to -1.0 and -1.0.
>
>
>
>   
  This is the kind of thing that I hoped evas would avoid tending to, and
 yet both raster and gustavo seem prone to want to get into. :(
  I know it's tempting to add more and more specialized layout/widgetry
 'objects' to the core evas lib/api, but I think it's a big mistake for
 evas
 in the long run.

  It's not hard to start extending evas *and* edje to allow for custom
 objects,
 even if at first all such object modules need to access evas internals.
 Adding
 these kinds of things, whether text-grid objs, or box objs, or table
 objs,
 etc..
 directly into the evas lib api is likely to become 'not a good idea'.

 
>>> this requires no access to internals, it's just a helper to avoid
>>> spreading this code everywhere (e_box, guarana, elementary, etk...).
>>>
>>> the point is, raster always planned to have dynamic layout options in
>>> Edje, so it's possible to specify in Edje if you want a stack,
>>> vertical or horizontal layout and in code you add the objects. To add
>>> this we need this kind of code. We could create yet another library
>>> (like split esmart into edje independent and dependent code) and add
>>> this there, make edje dependent on it, but it will be lot of work to
>>> get a simple and useful code in.
>>>
>>> Since evas already have internal libs in it, at some point we can
>>> create a libevas_utils and users can optionally link to it. That way
>>> we keep things in a common place and avoid extra overhead.
>>>
>>> Our point is to do now what others should have done already: unify
>>> stuff. Size hints, box, editable text block and these stuff should go
>>> in Evas and make it easy to share stuff and easier to use EFL.  I
>>> always hear, at least from ETK, that some things were re-done in ETK
>>> just to work around some problems in Evas or Edje, I consider that
>>> wrong, these stuff should be fixed there, and that's what we're doing.
>>>
>>>
>>>   
>>  Ok, let me pose this this from a different view.. let's not worry about
>> whether
>> or not such 'layout' or 'widgetry' or 'special-purpose' or whatever kinds of
>> objects
>> should be added to the evas lib *api* -- I don't think they should in some
>> cases,
>> but that's partly incidental here.
>>
>>  There will be a need for such kinds of objects, and others... things like
>> custom
>> self-rendered objs (possibly relying on other libs and apsects that those
>> libs allow)
>> that are best implemented at the 'evas level' for efficiency reasons and
>> whatnot.
>> It's just a matter of where their implementation should be, how to realize
>> them..
>> and how to expose their apis.
>>
>>  So, let's discuss the underlying issue that I think is what should be
>> addressed
>> here - namely, that of evas' "extensibility" at least as far as object types
>> goes.
>>
>>  Would one want things like "object modules", or libs of them, for giving
>> evas
>> that kind of of flexibility and extensibility at a low enough level?
>>
>>  Well, one could certainly obtain the kinds of objs you want here, quite
>> trivially
>> really, and have them implemented by some lib.. even by edje itself say. And
>> you
>> could have things like a 'cairo' or an 'svg' object (which for certain
>> engines
>> could be done more 'directly' then via having these render to an argb
>> buffer), and
>> you could have say an 'ogre3d' object, or maybe a 'gstreamer' obj, or a
>> video obj,
>> or many, many things... and not have to worry about these being 'added' to
>> the
>> evas lib's api, or imposing a hard dependence on them by evas.. and yet,
>> they can be
>> implemented at the 'evas' level (possibly having them need access to evas
>> internals
>> at first, as I quickly outlined in an erlier email, and maybe further
>> refined into
>> a more abstract mec

Re: [E-devel] can't focus on swallowed part (Gustavo Sverzut Barbieri) (Gustavo Sverzut Barbieri)

2008-10-28 Thread dongmei zhou
hi,
  I just want to when  I clicked the swallowed  part  It can handle  the
event  according  to the  special  icon  part.

 a simple code :


   self.restaurant_icon=edje.Edje(self.ee.evas,

file=self.edje_file,

group="restaurant_menu")

self.restaurant.part_swallow("contents",self.restaurant_icon)


self.main_group.part_swallow("sub_menu_contents",self.restaurant)
   #self.main_group.member_add(self.restaurant) (this
line  code not work well )
   self.restaurant.signal_emit("transition,in",source)



self.main_group.part_object_get("sub_menu_contents").focus =True
   self.main_group.focus =False
   self.main_group.show()
  so  when I clicked  the  restaurant  icon ,  I  can get  the
"sub_menu_contents"  clicked signal , then I can SIGNAL_EMIT   the  "xx
restaurant icon  clicked  "  signal ,but   I don't   know   how  to
recognize  which  icon  is  clicked  ,  I  want to  try  the  mouse_grab  :

  self.restaurant.mouse_grab_set( )  but It can't work

 thanks!



> I fail to understand what you have and what you're trying to do. Just
> attach a simple edje and a simple code so I can fix and send the patch
> to you.
>
> --
> Gustavo Sverzut Barbieri
> http://profusion.mobi embedded systems
> --
> MSN: [EMAIL PROTECTED]
> Skype: gsbarbieri
> Mobile: +55 (19) 9225-2202
>
-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: barbieri IN trunk/evas/src/lib: . canvas

2008-10-28 Thread Gustavo Sverzut Barbieri
On Tue, Oct 28, 2008 at 6:05 AM, Jose Gonzalez <[EMAIL PROTECTED]> wrote:
>  Gustavo wrote:
>
 This code is part of our effort to unify common code into base libs,
 where its worth to avoid duplicating code over and over again.

 With that in Evas, we can now expose it in Edje and use it in Guarana
 and Elementary and possible any other toolkit. It uses Evas_Object's
 size hints infrastructure, but can be extended to have its own
 properties if one wish.

 Attached is a test case and example. You can try to hack your own
 fancy layout function, it's it's generic and useful to others, add it
 to evas as well (Like layout using a Bezier or any other path).

 People implementing Ecore Evas can now use layout "stack" and
 ecore_evas_object_associate() to provide the "main window" concept,
 just add your background and then your object to the evas_object_box
 and associate this box to the window. If you want your background to
 scale in both directions, just set it's aligns to -1.0 and -1.0.



>>>
>>>  This is the kind of thing that I hoped evas would avoid tending to, and
>>> yet both raster and gustavo seem prone to want to get into. :(
>>>  I know it's tempting to add more and more specialized layout/widgetry
>>> 'objects' to the core evas lib/api, but I think it's a big mistake for
>>> evas
>>> in the long run.
>>>
>>>  It's not hard to start extending evas *and* edje to allow for custom
>>> objects,
>>> even if at first all such object modules need to access evas internals.
>>> Adding
>>> these kinds of things, whether text-grid objs, or box objs, or table
>>> objs,
>>> etc..
>>> directly into the evas lib api is likely to become 'not a good idea'.
>>>
>>
>> this requires no access to internals, it's just a helper to avoid
>> spreading this code everywhere (e_box, guarana, elementary, etk...).
>>
>> the point is, raster always planned to have dynamic layout options in
>> Edje, so it's possible to specify in Edje if you want a stack,
>> vertical or horizontal layout and in code you add the objects. To add
>> this we need this kind of code. We could create yet another library
>> (like split esmart into edje independent and dependent code) and add
>> this there, make edje dependent on it, but it will be lot of work to
>> get a simple and useful code in.
>>
>> Since evas already have internal libs in it, at some point we can
>> create a libevas_utils and users can optionally link to it. That way
>> we keep things in a common place and avoid extra overhead.
>>
>> Our point is to do now what others should have done already: unify
>> stuff. Size hints, box, editable text block and these stuff should go
>> in Evas and make it easy to share stuff and easier to use EFL.  I
>> always hear, at least from ETK, that some things were re-done in ETK
>> just to work around some problems in Evas or Edje, I consider that
>> wrong, these stuff should be fixed there, and that's what we're doing.
>>
>>
>
>  Ok, let me pose this this from a different view.. let's not worry about
> whether
> or not such 'layout' or 'widgetry' or 'special-purpose' or whatever kinds of
> objects
> should be added to the evas lib *api* -- I don't think they should in some
> cases,
> but that's partly incidental here.
>
>  There will be a need for such kinds of objects, and others... things like
> custom
> self-rendered objs (possibly relying on other libs and apsects that those
> libs allow)
> that are best implemented at the 'evas level' for efficiency reasons and
> whatnot.
> It's just a matter of where their implementation should be, how to realize
> them..
> and how to expose their apis.
>
>  So, let's discuss the underlying issue that I think is what should be
> addressed
> here - namely, that of evas' "extensibility" at least as far as object types
> goes.
>
>  Would one want things like "object modules", or libs of them, for giving
> evas
> that kind of of flexibility and extensibility at a low enough level?
>
>  Well, one could certainly obtain the kinds of objs you want here, quite
> trivially
> really, and have them implemented by some lib.. even by edje itself say. And
> you
> could have things like a 'cairo' or an 'svg' object (which for certain
> engines
> could be done more 'directly' then via having these render to an argb
> buffer), and
> you could have say an 'ogre3d' object, or maybe a 'gstreamer' obj, or a
> video obj,
> or many, many things... and not have to worry about these being 'added' to
> the
> evas lib's api, or imposing a hard dependence on them by evas.. and yet,
> they can be
> implemented at the 'evas' level (possibly having them need access to evas
> internals
> at first, as I quickly outlined in an erlier email, and maybe further
> refined into
> a more abstract mechanism later if desired).
>
>  So, as a question: Would this kind of extensibility for evas be something
> desired?

of course yes

> What concrete things could you do with t

[E-devel] EFL xembed implementation

2008-10-28 Thread Veli Ogla Sungutay
Hey guys,
Is it possible to create an Xembed implementation in EFL? Would ecore hide
some of the nasty X code in the process?
Where should one start?
My purpose is to embed Flash Player 10 into and E application.
-- 
Veli Ogla Sungutay
http://gui-rd.org
-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: barbieri IN trunk/evas/src/lib: . canvas

2008-10-28 Thread Jose Gonzalez
   I wrote:

>Ok, let me pose this this from a different view.. let's not worry about 
> whether
> or not such 'layout' or 'widgetry' or 'special-purpose' or whatever kinds of 
> objects
> should be added to the evas lib *api* -- I don't think they should in some 
> cases,
> but that's partly incidental here.
>
>There will be a need for such kinds of objects, and others... things like 
> custom
> self-rendered objs (possibly relying on other libs and apsects that those 
> libs allow)
> that are best implemented at the 'evas level' for efficiency reasons and 
> whatnot.
> It's just a matter of where their implementation should be, how to realize 
> them..
> and how to expose their apis.
>
>So, let's discuss the underlying issue that I think is what should be 
> addressed
> here - namely, that of evas' "extensibility" at least as far as object types 
> goes.
>
>Would one want things like "object modules", or libs of them, for giving 
> evas
> that kind of of flexibility and extensibility at a low enough level?
>
>Well, one could certainly obtain the kinds of objs you want here, quite 
> trivially
> really, and have them implemented by some lib.. even by edje itself say. And 
> you
> could have things like a 'cairo' or an 'svg' object (which for certain engines
> could be done more 'directly' then via having these render to an argb 
> buffer), and
> you could have say an 'ogre3d' object, or maybe a 'gstreamer' obj, or a video 
> obj,
> or many, many things... and not have to worry about these being 'added' to the
> evas lib's api, or imposing a hard dependence on them by evas.. and yet, they 
> can be
> implemented at the 'evas' level (possibly having them need access to evas 
> internals
> at first, as I quickly outlined in an erlier email, and maybe further refined 
> into
> a more abstract mechanism later if desired).
>
>So, as a question: Would this kind of extensibility for evas be something 
> desired?
> What concrete things could you do with this?
>Is it a 'better' way to 'add' special/custom objs to evas then always 
> worrying
> about whether or not to extend the evas lib's api with this or that 'one' 
> useful obj?
>   

   Just to throw in a couple of other interesting aspects that one may want to
ponder on this stuff...

   Given such an 'object modules' extension mechanism for evas, how would one go
about extending something like edje/edc to allow for using some given set of 
such
object modules (ie. how to make edje/edc aware of and represent any given
custom object types - beyond simple swallowing of external objs that is).
   Once one has that, it could possible to have things like edje_editor have
a plugin system that would allow for people to extend it to allow for building
edjes which take advantage of some given set of object modules.



Click here to find the right business program for you and take your career to 
the next level. 
http://thirdpartyoffers.juno.com/TGL2141/fc/Ioyw6i3l7gNDxaZWwC1nLTZIjec1l0ZxYEzvoVXqTacJE7hHc7q6PO/

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] E SVN: barbieri IN trunk/evas/src/lib: . canvas

2008-10-28 Thread Jose Gonzalez
   Gustavo wrote:

>>> This code is part of our effort to unify common code into base libs,
>>> where its worth to avoid duplicating code over and over again.
>>>
>>> With that in Evas, we can now expose it in Edje and use it in Guarana
>>> and Elementary and possible any other toolkit. It uses Evas_Object's
>>> size hints infrastructure, but can be extended to have its own
>>> properties if one wish.
>>>
>>> Attached is a test case and example. You can try to hack your own
>>> fancy layout function, it's it's generic and useful to others, add it
>>> to evas as well (Like layout using a Bezier or any other path).
>>>
>>> People implementing Ecore Evas can now use layout "stack" and
>>> ecore_evas_object_associate() to provide the "main window" concept,
>>> just add your background and then your object to the evas_object_box
>>> and associate this box to the window. If you want your background to
>>> scale in both directions, just set it's aligns to -1.0 and -1.0.
>>>
>>>
>>>   
>>  This is the kind of thing that I hoped evas would avoid tending to, and
>> yet both raster and gustavo seem prone to want to get into. :(
>>  I know it's tempting to add more and more specialized layout/widgetry
>> 'objects' to the core evas lib/api, but I think it's a big mistake for evas
>> in the long run.
>>
>>  It's not hard to start extending evas *and* edje to allow for custom
>> objects,
>> even if at first all such object modules need to access evas internals.
>> Adding
>> these kinds of things, whether text-grid objs, or box objs, or table objs,
>> etc..
>> directly into the evas lib api is likely to become 'not a good idea'.
>> 
>
> this requires no access to internals, it's just a helper to avoid
> spreading this code everywhere (e_box, guarana, elementary, etk...).
>
> the point is, raster always planned to have dynamic layout options in
> Edje, so it's possible to specify in Edje if you want a stack,
> vertical or horizontal layout and in code you add the objects. To add
> this we need this kind of code. We could create yet another library
> (like split esmart into edje independent and dependent code) and add
> this there, make edje dependent on it, but it will be lot of work to
> get a simple and useful code in.
>
> Since evas already have internal libs in it, at some point we can
> create a libevas_utils and users can optionally link to it. That way
> we keep things in a common place and avoid extra overhead.
>
> Our point is to do now what others should have done already: unify
> stuff. Size hints, box, editable text block and these stuff should go
> in Evas and make it easy to share stuff and easier to use EFL.  I
> always hear, at least from ETK, that some things were re-done in ETK
> just to work around some problems in Evas or Edje, I consider that
> wrong, these stuff should be fixed there, and that's what we're doing.
>
>   

   Ok, let me pose this this from a different view.. let's not worry about 
whether
or not such 'layout' or 'widgetry' or 'special-purpose' or whatever kinds of 
objects
should be added to the evas lib *api* -- I don't think they should in some 
cases,
but that's partly incidental here.

   There will be a need for such kinds of objects, and others... things like 
custom
self-rendered objs (possibly relying on other libs and apsects that those libs 
allow)
that are best implemented at the 'evas level' for efficiency reasons and 
whatnot.
It's just a matter of where their implementation should be, how to realize 
them..
and how to expose their apis.

   So, let's discuss the underlying issue that I think is what should be 
addressed
here - namely, that of evas' "extensibility" at least as far as object types 
goes.

   Would one want things like "object modules", or libs of them, for giving evas
that kind of of flexibility and extensibility at a low enough level?

   Well, one could certainly obtain the kinds of objs you want here, quite 
trivially
really, and have them implemented by some lib.. even by edje itself say. And you
could have things like a 'cairo' or an 'svg' object (which for certain engines
could be done more 'directly' then via having these render to an argb buffer), 
and
you could have say an 'ogre3d' object, or maybe a 'gstreamer' obj, or a video 
obj,
or many, many things... and not have to worry about these being 'added' to the
evas lib's api, or imposing a hard dependence on them by evas.. and yet, they 
can be
implemented at the 'evas' level (possibly having them need access to evas 
internals
at first, as I quickly outlined in an erlier email, and maybe further refined 
into
a more abstract mechanism later if desired).

   So, as a question: Would this kind of extensibility for evas be something 
desired?
What concrete things could you do with this?
   Is it a 'better' way to 'add' special/custom objs to evas then always 
worrying
about whether or not to extend the evas lib's api with this or that 'one' 
useful obj?


_