Re: [E-devel] UPDATE: Re: [e-users] E17 coding funds: ...
On Tue, 25 Jul 2006 09:48:36 +0900 Carsten Haitzler (The Rasterman) [EMAIL PROTECTED] wrote: On Fri, 14 Jul 2006 11:56:35 +0900 Carsten Haitzler (The Rasterman) [EMAIL PROTECTED] babbled: The person with the money power has been away for the past week and will not be back until the weekend. So I can't do anything there until they are back. The company that was prepared to wait for me has called me a couple of times, looks like they don't want to wait any longer. I can hold them off for another day or two, but then I'll have to make a decision. signature.asc Description: PGP signature - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] UPDATE: Re: [e-users] E17 coding funds: ...
On Wed, 2 Aug 2006 16:48:56 +1000 David Seikel [EMAIL PROTECTED] babbled: On Tue, 25 Jul 2006 09:48:36 +0900 Carsten Haitzler (The Rasterman) [EMAIL PROTECTED] wrote: On Fri, 14 Jul 2006 11:56:35 +0900 Carsten Haitzler (The Rasterman) [EMAIL PROTECTED] babbled: The person with the money power has been away for the past week and will not be back until the weekend. So I can't do anything there until they are back. The company that was prepared to wait for me has called me a couple of times, looks like they don't want to wait any longer. I can hold them off for another day or two, but then I'll have to make a decision. i will prod... -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)[EMAIL PROTECTED] 裸好多 Tokyo, Japan (東京 日本) - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] Fsel patch
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Hi, A patch for the fsel. This patch add a menu to rename and delete files in the fsel. But, i don't know refresh the smart when a file is removed. Regards, maxtoo. -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.3 (GNU/Linux) iD8DBQFE0MSC7vwF1MVzFTgRAmkeAJ4vmsUIpCCDwcJjNjWYCtATg10tIACfc0K+ i2L+sJFg0dxOWAkrGhPgXdI= =RjMV -END PGP SIGNATURE- --- e_fm.c 2006-08-01 16:46:48.0 + +++ /usr/portage/distfiles/cvs-src/e17/apps/e/src/bin/e_fm.c 2006-08-02 15:06:53.0 + @@ -137,6 +137,13 @@ static void _e_fm2_smart_clip_set(Evas_Object *obj, Evas_Object * clip); static void _e_fm2_smart_clip_unset(Evas_Object *obj); +static void _e_fm2_menu_action_display(E_Fm2_Icon *ic, Evas_Object *obj, unsigned int timestamp); + +static void _e_fm2_file_rename (void *data, E_Menu *m, E_Menu_Item *mi); +static void _e_fm2_file_rename_yes_cb (char *text, void *data); +static void _e_fm2_file_delete (void *data, E_Menu *m, E_Menu_Item *mi); +static void _e_fm2_file_delete_yes_cb (void *data, E_Dialog *dialog); + static char *_meta_path = NULL; static Evas_Smart *_e_fm2_smart = NULL; @@ -1796,6 +1803,13 @@ ic = data; ev = event_info; + + switch(ev-button) + { + case 3: + _e_fm2_menu_action_display(ic, obj, ev-timestamp); + break; + } } static void @@ -1803,7 +1817,7 @@ { Evas_Event_Mouse_Move *ev; E_Fm2_Icon *ic; - + ic = data; ev = event_info; } @@ -2203,3 +2217,173 @@ if (!sd) return; evas_object_clip_unset(sd-clip); } + +static void +_e_fm2_menu_action_display(E_Fm2_Icon *ic, Evas_Object *obj, unsigned int timestamp) +{ + E_Fm2_Smart_Data *sd; + E_Menu *mn; + E_Menu_Item *mi; + E_Manager *man; + E_Container *con; + E_Zone *zone; + int x, y; + + sd = ic-sd; + + if (ic-selected) +{ + mn = e_menu_new(); + e_menu_category_set(mn, fileman/action); + + mi = e_menu_item_new(mn); + e_menu_item_label_set(mi, _(Delete)); + e_menu_item_callback_set(mi, _e_fm2_file_delete, ic); + + mi = e_menu_item_new(mn); + e_menu_item_label_set(mi, _(Rename)); + e_menu_item_callback_set(mi, _e_fm2_file_rename, ic); + + man = e_manager_current_get(); + if (!man) return; + con = e_container_current_get(man); + if (!con) return; + ecore_x_pointer_xy_get(con-win, x, y); + + zone = e_util_zone_current_get(man); + if (!zone) return; + + e_menu_activate_mouse(mn, zone, +x, y, 1, 1, +E_MENU_POP_DIRECTION_DOWN, timestamp); +} +} + +static void +_e_fm2_file_rename (void *data, E_Menu *m, E_Menu_Item *mi) +{ + E_Fm2_Icon *ic; + E_Manager *man; + E_Container *con; + E_Win *win; + char *old_path; + char text[PATH_MAX + 256]; + + ic = data; + + man = e_manager_current_get(); + if (!man) return; + con = e_container_current_get(man); + if (!con) return; + win = e_win_new(con); + + snprintf(text, PATH_MAX + 256, Rename %s to, ic-info.file); + e_entry_dialog_show(Rename file, NULL, text, NULL, NULL, + _e_fm2_file_rename_yes_cb, NULL, ic); +} + +static void +_e_fm2_file_rename_yes_cb (char *text, void *data) +{ + E_Fm2_Icon *ic; + E_Dialog *dialog; + E_Manager *man; + E_Container *con; + char newpath[PATH_MAX]; + char oldpath[PATH_MAX]; + char error[PATH_MAX + 256]; + + ic = data; + + if (text || strcmp(text, ic-info.file)) +{ + snprintf(newpath, PATH_MAX, %s/%s, ic-sd-realpath, text); + snprintf(oldpath, PATH_MAX, %s/%s, ic-sd-realpath, ic-info.file); + + if (rename(oldpath, newpath) 0) +{ + man = e_manager_current_get(); + if (!man) return; + con = e_container_current_get(man); + if (!con) return; + + dialog = e_dialog_new(con); + e_dialog_button_add(dialog, _(OK), NULL, NULL, NULL); + e_dialog_button_focus_num(dialog, 1); + e_dialog_title_set(dialog, _(Error)); + snprintf(error, PATH_MAX + 256, _(Could not rename from b%s/b to b%s/b), ic-info.file, text); + e_dialog_text_set(dialog, error); + e_dialog_show(dialog); + return; + } + + ic-info.label = NULL; + ic-info.file = strrchr(newpath, '/'); + ic-info.file++; + _e_fm2_icon_label_set(ic, ic-obj); +} +} + +static void +_e_fm2_file_delete (void *data, E_Menu *m, E_Menu_Item *mi) +{ + E_Manager *man; + E_Container *con; + E_Dialog *dialog; + E_Fm2_Icon *ic; + char text[PATH_MAX + 256]; + + man = e_manager_current_get(); + if (!man) return; + con = e_container_current_get(man); + if (!con) return; + + ic = data; + + dialog = e_dialog_new(con); + e_dialog_button_add(dialog, _(Yes), NULL, _e_fm2_file_delete_yes_cb, ic); + e_dialog_button_add(dialog, _(No), NULL, NULL, NULL); + e_dialog_button_focus_num(dialog, 1); + e_dialog_title_set(dialog, _(Confirm Delete)); + snprintf(text, PATH_MAX + 256, _(Are you sure you want to delete brb%s/%s/b ?),
Re: [E-devel] Edje grad objs
I committed a large chunk of the code for edje grads last night. I added angle and spread to the fill block, and reused the rest of fill (origin, size) for the grad fill. Angle will be interpolated during transitions, as will fill. The other params (spectrum, and spread for now) flip at the halfway point. I also realized while doing it that I misunderstood how color stops were defined. I thought the 'distance' parameter was a distance 'from the previous stop'. Instead its more of a weight on a colors, defining the relative fraction of the spectra to be close to that color. I guess I need to dig into evas to see how this is actually implemented... There are still a few small things to be done: * the spectra{} block should be allowed inside other blocks (so you can have it in an included file without worrying about where exactly its included). edje_cc_handlers.c -- see the /* DUP */ lines for examples. * need to check on 'recalc' that the spectrum has actually changed before rebuilding the gradient's colors * anything else? rephorm - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Edje grad objs
I committed a large chunk of the code for edje grads last night. I added angle and spread to the fill block, and reused the rest of fill (origin, size) for the grad fill. Angle will be interpolated during transitions, as will fill. The other params (spectrum, and spread for now) flip at the halfway point. It's great work man.. more than I ever imagined would be done for months to come. I'm still not sure just what kinds of transitions edje deals in.. so whatever you have, if you've found that it works as you wish, then that would likely be best :) I also realized while doing it that I misunderstood how color stops were defined. I thought the 'distance' parameter was a distance 'from the previous stop'. Instead its more of a weight on a colors, defining the relative fraction of the spectra to be close to that color. I guess I need to dig into evas to see how this is actually implemented... Yeah :) The semantics you had in mind are the result of the 'color_add' api func using the term distance... though one could also have interpreted it to mean distance to the next, rather than the prev color. The docs mention instead some sort of weighting interpretation... The implementation actually used to follow the dist-to-next interpretation, or was it the dist-to-prev.. can't recall now. I changed it to follow something resembling the 'weighted' interpretation of the docs :) This is done in a simple but qualitatively reasonable way so as to conform with the docs' semantics: for each adjacent pair of (c0,d0), (c1,d1) I add another one in between these two of the form ((c0+c1)/2, d1), and the d's are taken as distance-to-next. Since the resuts are still linear w.r.t. the inputs (linear enough anyhow), what you were planning to do to manually interpolate color-stops in order to interpolate spectra, would've stii worked fine. But again, if you're thinking about two different grad objs then using the fade in/out method would be simpler. Everybody has their own idea of what a 'good' description for gradient spectra should be :) The gimp's ggr format describes these as a sequence of pairs of colors together with start and end positions for these in [0,1], with the end of a prev pair being the start of the next, and with a position for where the average color of each pair should lie... It also allows for interpolations that aren't linear, eg. sinusoidal, along an arc, and whatnot. The svg spec uses a sequence of colors plus positions in [0,1]. Other descriptions are possible, eg. something like the avove but also specifying a 'control' color for doing quadratic interpolation.. One could even take the description to be given as the definition of a spectrum function [0,1] -- ColorSpace via the use of some programing language syntax. Again, everybody has a favorite 'really-good' description :) There are still a few small things to be done: * the spectra{} block should be allowed inside other blocks (so you can have it in an included file without worrying about where exactly its included). edje_cc_handlers.c -- see the /* DUP */ lines for examples. * need to check on 'recalc' that the spectrum has actually changed before rebuilding the gradient's colors * anything else? I'll try and take a look a bit later and let you know if I have anything meaningful to say :) Again, damn nice work Brian :) - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E CVS: apps/e shorne
Enlightenment CVS wrote: Enlightenment CVS committal Author : shorne Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_widget_button.c Log Message: Allow the icon to be clicked by passing events. Why was this not done before? I identified the problem, but didn't have time to fix it. Sebastian - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E CVS: libs/evas moom
On Wed, Aug 02, 2006 at 10:14:53PM -0400, Enlightenment CVS wrote: Author : moom Log Message: * Add evas_object_smart_parent_get() to get the smart parent of an Evas_Object * Add evas_object_smart_members_get() to get a list of the member objects of a smart object good call. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] Network connection from a different thread
Hi list. I tried to connect to a jabber server from a different thread, while i was in the ecore_evas main loop. I tried it in Ruby (XMPP4R and jabber4r libraries), and in C (Loudmouth library). Loudmouth has an implented connect function, wich is done in a different thread, and than calls a callback func. In ruby, I started the threads with Thread.new{}. The problem is that I can't connect from a different thread. The thread stops at connecting (resolving the server's domain). But everything works fine in the other thread, until I try to connect to the network. Once I quit ecore main loop, the thread continues without errors (connection is successful). How can I connect, while I'm in the main loop (in a different thread, so the GUI don't freeze)? Thanks for the help. Sevcsik - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] Evas and the framebuffer
Hi all, I have several ideas/issues with the framebuffer and evas (also ecore_fb): 1. The fb engine currently has some kind of library made by raster which in my opinion overlaps in some way with the ecore_fb approach. The engine_info has a vt and a fb parameter both integers, i guess it was used to make evas allocate itself the terminal where the fb should be (map the console to the fb), that code is currently commented so i guess the vt parameter is no longer used. 2. when you do an evas_output_size_set the fb lib on the engine tries to first find a suitable mode on fb.modes (in /etc) if its found it setups the fb to that size and then draws on it, if it isnt found it just draws on a part of the fb memory of that size. I think (as in other engines) that the initialization and configuration should be done outside the engine itself (by the app). One way to accomplish this is to just pass the file descriptor of the framebuffer device, so evas itself just needs to check if the device of that fd is actually a fb (using a ioctl) and then use it as it does now. (no resize) 3. Mixing the above and ecore_fb makes some inconsistency, first ecore_fb_init parameter isnt used at all (it always read on fb0), then if you use ecore_evas_fb_new and want your app to be the size of the current fb you have to call: ecore_fb_init ecore_fb_size_get(w,h) ecore_evas_fb_new(..., w, h); // note here ecore_fb_init is also called, it wont do anything as the lib is already initialized but is kind of inconsitent to keep evas quit and dont change the resolution. So changing responsabilities on ecore_fb and evas fb engine would be a good idea. If you want your app to be of size WxH then the actual approach is valid if you find the correct mode. So my idea will be to do something like this (for the second use case): ecore_fb_init ecore_fb_size_set(W,H) evas_output_size_set(W,H) or using ecore_evas ecore_evas_fb_new(W,H) // same applies for the first case (same size as current fb size) 4. ecore_fb doesnt allows you to not map a virtual terminal to the fb device (very usefull for testing and dont screw your terminal) and also doesnt allows you to use several fb's like having fb0 and fb1 and then (with ecore_evas_fb for example) have two evases there. 5. i currently code the linux input handling on ecore_fb replacing the old ps2 (still isnt fully operative: no absolute axis) but when you launch an ecore_fb it will always allocate a vt and in my opinion both are too tight, as raster said ecore_fb is dependant to the input system and i agree but i think this doesnt applies on the other side (the input isnt dependant to the display) So if the init function could have more parameters to define its functionality would be good. 6. evas fb always maps the fb memory but for fb drivers where you cant actually map the memory and just write/read to the fd, evas is useless. I send this to know your opinions before i do any changes to the current code. best regards, ps: as always if i not explain myself correctly, sorry for my english :) turran - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Network connection from a different thread
Andrew Sevcsik wrote: Hi list. I tried to connect to a jabber server from a different thread, while i was in the ecore_evas main loop. I tried it in Ruby (XMPP4R and jabber4r libraries), and in C (Loudmouth library). Loudmouth has an implented connect function, wich is done in a different thread, and than calls a callback func. In ruby, I started the threads with Thread.new{}. The problem is that I can't connect from a different thread. The thread stops at connecting (resolving the server's domain). But everything works fine in the other thread, until I try to connect to the network. Once I quit ecore main loop, the thread continues without errors (connection is successful). How can I connect, while I'm in the main loop (in a different thread, so the GUI don't freeze)? Thanks for the help. Sevcsik - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel I'm restarting deving the enlightenment instant messenger (eim) and if you are interested adding your jabber client to a module for the libeim you will be welcome ! /j #eim If peoples are interested to make differents gui for eim, you could join too. I think ncurses, evas and etk guis could be kewl see you rookmoot - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] Evas and the framebuffer
Hi all, I have several ideas/issues with the framebuffer and evas (also ecore_fb): I send this to know your opinions before i do any changes to the current code. best regards, turran So, you'd like to change the semantics of the evas_fb engine and ecore_fb initialization mechanisms.. or add extra initializing functions or ??? Just to mildly change the subject here: Did you ever get that evas 'canvas' object, or subcanvas whatever, worked out? jose. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel