Re: [E-devel] where does elemenetary_test load default.edj into memory
Hi Rasterman, Thanks for your explaination, I got the point. whtuhtc 2010/5/21 Carsten Haitzler ras...@rasterman.com On Fri, 21 May 2010 11:19:57 +0800 whtuhtc tu whtu...@gmail.com said: More specific, when a AP initialize, it seems wm sould be informed and give the AP a window. where does it happen? If my understanding is wrong, please correct mine. that's not how x works. the app creates a window. wm isnt invovled at all. in x11 apps can work with OR without a wm present. you really need to read up on x11 and how it works. but the simple version: app creates window app sets properties on the window (title, name, class, min/max size etc.) app shows the window x11 intercepts the show and doesnt do it if a wm is present - x sends the wm a show request event for this window. now it's the wm's problem. wm gets the show event wm reads any properties it may handle and know about from the window wm makes a decision as to what to do with the window if wm decides to manage it, it creates its own frame window. wm puts app window inside its fram window (reparents it) wm may resize app window or may not - up to the wm. on a desktop wm generally wm uses size that app created the window at and makes the frame just a little bigger so it can hold titlebar, borders etc. wm handles drawing the titlebar and borders, but app keeps drawing to its own window and handling its own keyboard and mouse input events directly from x. wm isnt invovled in these events (beyond setting window focus - focus tells the xserver where keyboard events go (what window) whhen you press keys as they can only go to 1 window (the focused window). thats an example of what generally happens. didfferent wm's may work slightly differently. override-redirec windows bypass the wm and dont have their show request redirected to the wm - the wm doesnt interfere with such windows (they are used generally for popup menus for example). anyway - you need to study up on x11 before you want to understand the rest. :) toolkits like efl (elementary) are just libraries that create windows, handle keyboard + mouse input and draw to those windows for you filling them with stuff. whtuhtc 2010/5/21 Carsten Haitzler ras...@rasterman.com On Fri, 21 May 2010 10:05:02 +0800 whtuhtc tu whtu...@gmail.com said: I am trying to understand the EFL, including how to use and how to modify to fit my own purpose. by the way, where does the AP developed based on the elementary toolkit communicate with the window manager, when the AP start. Is it in ecore_init()? no - as such where does it communicated with the wm - that is a complex topic. first you'd need to just know how x11 and window managers work in general - there is no one place where they communicate - it happens in many places, sometimes explicit, most of the time just implicitly by setting properties (hints) or simply trying to do things and the wm reacts. whtuhtc 2010/5/20 Vincent Torri vto...@univ-evry.fr On Thu, 20 May 2010, wh tu wrote: Hi Rasterman, I know my qusetion is too rough. Thanks for you reminder. :-) Anyway, I am interested in EFL. It is a work of art I will trace the source and try to figure out. are you interested in working with the EFL, or on the EFL ? Vincent Also thanks for Atton's reply. 2010/5/20 Atton Jonathan jonathan.at...@gmail.com Search ELM_THEME in the source file. 2010/5/20 Carsten Haitzler ras...@rasterman.com On Tue, 18 May 2010 16:28:36 +0800 wh tu whtu...@gmail.com said: Hi Rasterman and Vincent, Thanks for your quick reply. I will look at the elm_theme.c. If this is not so time -consuming for you could you tell me the startup processes when elementary_test run? u.. it does... stuff! lots and lots and lots of it... going down many many many layers through multiple libraries, caches and more... it's like asking can you tell me the history of the roman empire please, if it's not too time consuming :) sure they started small - conquered a large chunk of wseter europe and the middle east, grew big, became decadent and eventually disintegrated. :) Thanks whtuhtc 2010/5/18 Vincent Torri vto...@univ-evry.fr On Tue, 18 May 2010, Carsten Haitzler (The Rasterman) wrote: On Tue, 18 May 2010 15:11:28 +0800 wh tu whtu...@gmail.com said: Hi, I am interested in elementary toolkit. I know elementary_test load data/theme/default.edj as its default theme, but I cannot find out in which source code file the default.edj file is loaded. I guess this process
[E-devel] Check if image file is recalsed
Hi, If I want to check if the image file is rescaled by EFL, where can I log or print a message to reminder me? Are there only evas_object_resize and evas_object_image_fill_set used to rescaled image file? Thanks in advance. whtuhtc -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Check if image file is recalsed
On Mon, 24 May 2010, whtuhtc tu wrote: Hi, If I want to check if the image file is rescaled by EFL, where can I log or print a message to reminder me? To resize the image itself: evas_object_image_size_set(o, width, height); evas_object_image_fill_set(o, 0, 0, width, height); To resize the Evas_Object that will display the image: evas_object_resize(o, width, height); So, if you do: evas_object_image_size_set(o, 2 * width, 2 * height); evas_object_image_fill_set(o, 0, 0, 2 * width, 2 * height); evas_object_resize(o, width, height); the image will have twice its width and height, but you will only see a quarter of it. Vincent Are there only evas_object_resize and evas_object_image_fill_set used to rescaled image file? Thanks in advance. whtuhtc -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Request for version upgrade when API changes
On Mon, 24 May 2010 10:41:41 +0200 Benjamin Zores b...@geexbox.org said: simple answer: no. why? because until 1.0 we are NOT maintaining ABI or API compatibility. that's what 1.0 is about. no - we will NOT change the .so major version for this as i want to STRICTLY keep so versions in line with library versions. a 2.0 == api/abi break from 1.x but until 1.0 we discard any effort in tracking abi and api changes. this saves time and effort for us and this has been the policy ever since. (if we have changed .so major versions we'd probably be at like libXXX.so.87 by now). so not going to happen. as of 1.0 compatbility will be strictly adhered to. ie 1.0 and 1.1 will be forwards compatible (apps written for 1.0 will work with 1.1 - but possibly not the other way around - eg we added a function call in 1.1 that wasn't in 1.0 - this is the standard way things work on linux/unix). as such every snapshot we added a change in soname (temporary) to make sure you can keep backwards-compat libs around. but... you'd have to stick to using snapshots only then. as such you are using SVN and .. using it comes with its inherent qualities - you're using the developers playpen stuff. it will change api, abi, break and so on and we don't go around doing all the maintenance bits just because we change an api in our svn. sorry to be the bearer of bad news - but we choose not to do that work. if you want to do it when making packages.. go ahead :) (fyi - i just added preliminary runtime and compile time version stuff to eet - this is a longer-term plan to have easy version adapting 1.0 and beyond, but until then, it's playpen stuff. the eet version stuff is up for comment and let me know what you think etc. - nothing in any other libs yet). Hi, I'd like to ask you to consider a version number change/bump when API changes. One of the biggest issue with EFL (my point of view but shared by dozens people) is the API unstability. As a developer, I understand and am fine with it but it's just not right for users and distro maintainers as one can't just always ask for using the latest SVN. E.g. Latest snapshot release of Elementary is 0.6.0.063. Latest SVN still is 0.6.0.063 but the API is different: some new functions (no problem here) but some existing proto have changed. When developing an application, one has no way to even keep a compatibility level as there's no way to determine which version of the library we're compiling against. So I'm not requesting for any release/snapshots or whatever but if you could just: - update the libefl.pc - potentially have a version number in a #define in the lib header Each time API/ABI has changed, that would be really helpful. Thx, Ben -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Request for version upgrade when API changes
On Mon, May 24, 2010 at 10:57, Carsten Haitzler ras...@rasterman.com wrote: simple answer: no. Raster just said no :P (just joking, it's not so hard for me to keep my source in-line with EFL... I'll wait... hopefully). -- daniele_athome -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Request for version upgrade when API changes
On Mon, 24 May 2010 11:05:26 +0200 Benjamin Zores b...@geexbox.org said: On Mon, May 24, 2010 at 10:57 AM, Carsten Haitzler ras...@rasterman.com wrote: On Mon, 24 May 2010 10:41:41 +0200 Benjamin Zores b...@geexbox.org said: simple answer: no. why? because until 1.0 we are NOT maintaining ABI or API compatibility. that's what 1.0 is about. no - we will NOT change the .so major version for this as i want to STRICTLY keep so versions in line with library versions. a 2.0 == api/abi break from 1.x but until 1.0 we discard any effort in tracking abi and api changes. this saves time and effort for us and this has been the policy ever since. (if we have changed .so major versions we'd probably be at like libXXX.so.87 by now). so not going to happen. as of 1.0 compatbility will be strictly adhered to. ie 1.0 and 1.1 will be forwards compatible (apps written for 1.0 will work with 1.1 - but possibly not the other way around - eg we added a function call in 1.1 that wasn't in 1.0 - this is the standard way things work on linux/unix). I do understand your reason fully and was expected such an answer actually :-) Though I wasn't requesting for a major/minor version bump. Eg. Elementary 0.6.0.063 - 0.6.0.064, the library still is called .so.0.6.0 Anyhow, I don't know since how long people are waiting for 1.0 but you probably heard this complaint much more than I ever did :-) yup - i know... and it's some pain you'll have to live with sorry.. until 1.0 - but.. trust me - we are actively talking of doing a 1.0 alpha - that means we dont intend any abi/api breaks from there and plan to add some final small touches and clear up bugs. we're not quite there yet. i want to whack out some more todo items and get a bunch of patches in before calling that. the problem is - it's an api. once we lock it down - we are stuck supporting that version of the api for YEARS. i don't want to do that. i want to keep the warning signs up and keep those using them on their toes - so they know that nup.. you cant rely on the api to be solid and 100% supported going forward until 1.0. thats kind the the seal of approval thing. until then i am keeping things fluid. right now i get to make a change if its needed - and dont even think about it. that saves pain and effort. we do need version check handling as of 1.0 - definitely. as i said - i've started adding it in. eet was the first candidate for a test as its actually at 1.2.3 now. 1.3.0 will have the version check in it (and that makes me really unhappy because it should have been in from 1.0 on and that just tells you eet was released way too soon - entirely because of pressure to do so and with nothing useful having ever come of it, and now simply more complexity for app developers as they had no way to know api version until 1.3 - i want that in from 1.0.). i've been doing libraries for linux for longer than most people have even known about linux. i've learned a thing or 2 along the way, and one of those is to be very conservative about versions, changes and releases, as once you have an api - and people use it, you're STUCK maintaining and supporting it. for MANY years. i do not want to be stuck with something that isnt at least half-way decent and thats going to stand the test of time. otherwise you will see a 2.0, 3.0, 4.0, 5.0 in quick succession and a bunch of very pissed off app developers who have to adapt (or stay on an old version) and for sanity mainline will simply not want to release patches, fixes etc. for 1.0 when we're on 4.0 ourselves. so don't think i hate you :) i am trying to maximise ultimate quality while minimising support etc. costs. there is a period of pain as a result :) -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Exchange
I can confirm also the exhange API is down :( dave 2010/5/24 Tom Haste tomha...@gmail.com: Hi all, http://exchange.enlightenment.org/ is now a 500 error. Can someone please fix this? :| Toma. -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Check if image file is recalsed
sorry, this is evas_object_image_filled_set 2010/5/24 Atton Jonathan jonathan.at...@gmail.com or : evas_object_image_file_set 1 time and then when you rezise : evas_object_resize 2010/5/24 Vincent Torri vto...@univ-evry.fr On Mon, 24 May 2010, whtuhtc tu wrote: Hi, If I want to check if the image file is rescaled by EFL, where can I log or print a message to reminder me? To resize the image itself: evas_object_image_size_set(o, width, height); evas_object_image_fill_set(o, 0, 0, width, height); To resize the Evas_Object that will display the image: evas_object_resize(o, width, height); So, if you do: evas_object_image_size_set(o, 2 * width, 2 * height); evas_object_image_fill_set(o, 0, 0, 2 * width, 2 * height); evas_object_resize(o, width, height); the image will have twice its width and height, but you will only see a quarter of it. Vincent Are there only evas_object_resize and evas_object_image_fill_set used to rescaled image file? Thanks in advance. whtuhtc -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Regards. -- Regards. -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Check if image file is recalsed
or : evas_object_image_file_set 1 time and then when you rezise : evas_object_resize 2010/5/24 Vincent Torri vto...@univ-evry.fr On Mon, 24 May 2010, whtuhtc tu wrote: Hi, If I want to check if the image file is rescaled by EFL, where can I log or print a message to reminder me? To resize the image itself: evas_object_image_size_set(o, width, height); evas_object_image_fill_set(o, 0, 0, width, height); To resize the Evas_Object that will display the image: evas_object_resize(o, width, height); So, if you do: evas_object_image_size_set(o, 2 * width, 2 * height); evas_object_image_fill_set(o, 0, 0, 2 * width, 2 * height); evas_object_resize(o, width, height); the image will have twice its width and height, but you will only see a quarter of it. Vincent Are there only evas_object_resize and evas_object_image_fill_set used to rescaled image file? Thanks in advance. whtuhtc -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Regards. -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: bdilly trunk/TMP/st/elementary/src/lib
On Mon, May 24, 2010 at 12:06 AM, Iván Briano (Sachiel) sachi...@gmail.com wrote: On Mon, May 24, 2010 at 8:41 AM, Enlightenment SVN no-re...@enlightenment.org wrote: Log: Implement elm index sorted insert - Name index item as Elm_Index_Item - Add some other index functions: + Item find + Data get/set + Letter get I think this stuff will make easier to create index for dynamically created lists. Author: bdilly Date: 2010-05-23 16:41:32 -0700 (Sun, 23 May 2010) New Revision: 49171 Modified: trunk/TMP/st/elementary/src/lib/Elementary.h.in trunk/TMP/st/elementary/src/lib/elm_index.c Modified: trunk/TMP/st/elementary/src/lib/Elementary.h.in === --- trunk/TMP/st/elementary/src/lib/Elementary.h.in 2010-05-23 23:23:51 UTC (rev 49170) +++ trunk/TMP/st/elementary/src/lib/Elementary.h.in 2010-05-23 23:41:32 UTC (rev 49171) @@ -1266,6 +1266,7 @@ * vertical (two up/down buttons at the right side and text left aligned) */ + typedef struct _Elm_Index_Item Elm_Index_Item; EAPI Evas_Object *elm_index_add(Evas_Object *parent); EAPI void elm_index_active_set(Evas_Object *obj, Eina_Bool active); EAPI void elm_index_item_level_set(Evas_Object *obj, int level); @@ -1275,9 +1276,14 @@ EAPI void elm_index_item_prepend(Evas_Object *obj, const char *letter, const void *item); EAPI void elm_index_item_append_relative(Evas_Object *obj, const char *letter, const void *item, const void *relative); EAPI void elm_index_item_prepend_relative(Evas_Object *obj, const char *letter, const void *item, const void *relative); + EAPI void elm_index_item_sorted_insert(Evas_Object *obj, const char *letter, const void *item, Eina_Compare_Cb cmp_func, Eina_Compare_Cb cmp_data_func); EAPI void elm_index_item_del(Evas_Object *obj, const void *item); + EAPI Elm_Index_Item *elm_index_item_find(Evas_Object *obj, const void *item); EAPI void elm_index_item_clear(Evas_Object *obj); EAPI void elm_index_item_go(Evas_Object *obj, int level); + EAPI void *elm_index_item_data_get(const Elm_Index_Item *item); + EAPI void elm_index_item_data_set(Elm_Index_Item *it, const void *data); + EAPI const char *elm_index_item_letter_get(const Elm_Index_Item *item); /* smart callbacks called: * changed - when the selected index item changes * delay,changed - when the selected index item changes, but after some small idle period Modified: trunk/TMP/st/elementary/src/lib/elm_index.c === --- trunk/TMP/st/elementary/src/lib/elm_index.c 2010-05-23 23:23:51 UTC (rev 49170) +++ trunk/TMP/st/elementary/src/lib/elm_index.c 2010-05-23 23:41:32 UTC (rev 49171) @@ -9,7 +9,6 @@ */ typedef struct _Widget_Data Widget_Data; -typedef struct _Item Item; struct _Widget_Data { @@ -26,7 +25,7 @@ Eina_Bool down : 1; }; -struct _Item +struct _Elm_Index_Item { Evas_Object *obj; const char *letter; @@ -42,13 +41,13 @@ static void _sizing_eval(Evas_Object *obj); static void _index_box_auto_fill(Evas_Object *obj, Evas_Object *box, int level); static void _index_box_clear(Evas_Object *obj, Evas_Object *box, int level); -static void _item_free(Item *it); +static void _item_free(Elm_Index_Item *it); static void _del_hook(Evas_Object *obj) { Widget_Data *wd = elm_widget_data_get(obj); - Item *it; + Elm_Index_Item *it; Eina_List *l, *clear = NULL; if (!wd) return; _index_box_clear(obj, wd-bx[wd-level], wd-level); @@ -138,13 +137,13 @@ evas_object_size_hint_max_set(obj, maxw, maxh); } -static Item * +static Elm_Index_Item * _item_new(Evas_Object *obj, const char *letter, const void *item) { Widget_Data *wd = elm_widget_data_get(obj); - Item *it; + Elm_Index_Item *it; if (!wd) return NULL; - it = calloc(1, sizeof(Item)); + it = calloc(1, sizeof(Elm_Index_Item)); if (!it) return NULL; it-obj = obj; it-letter = eina_stringshare_add(letter); @@ -153,12 +152,12 @@ return it; } -static Item * +static Elm_Index_Item * _item_find(Evas_Object *obj, const void *item) { Widget_Data *wd = elm_widget_data_get(obj); Eina_List *l; - Item *it; + Elm_Index_Item *it; if (!wd) return NULL; EINA_LIST_FOREACH(wd-items, l, it) if (it-data == item) return it; @@ -166,7 +165,7 @@ } static void -_item_free(Item *it) +_item_free(Elm_Index_Item *it) { Widget_Data *wd = elm_widget_data_get(it-obj); if (!wd) return; @@ -182,7 +181,7 @@ { Widget_Data *wd = elm_widget_data_get(obj); Eina_List *l; - Item *it; + Elm_Index_Item *it; Evas_Coord mw, mh, w, h; int i = 0; if (!wd) return; @@ -235,7 +234,7 @@ { Widget_Data *wd =
Re: [E-devel] Evas and Arabic support
On Mon, May 24, 2010 at 5:13 AM, Pigeon pig...@pigeond.net wrote: I've noticed there are some Arabic related patches to Evas a few months ago. I'm wondering what is the status of Arabic support, like including Arabic text input and display. It should display Arabic correct (mostly, but the word Allah for instance isn't displayed correctly yet). On the other hand, full interface mirroring and text block alignments are not yet supported. I was trying to e-mail Tom, who submitted those Arabic patches, about this but his e-mail bounced back. I'm this Tom, and I'm alive and kicking, feel free to contact me at any time. Does anyone know if the Arabic support needs any more work, or if it might work to some degree already? Arabic support does need more work, but as I said, it's fully functional. I'm an Hebrew speaker myself, I have know nothing about Arabic, I just compared texts from wikipedia to my renderings (with very little help from an Arabic friend of mine). I use EFL with Hebrew on a day to day basis, it's very usable, but again, final touches are missing, and I think Arabic should be the same. I think I will start working on full RTL (Hebrew, Arabic, Persian and etc) support for enlightenment starting next week, I will have more info then, ask me in a week to know my status if you are interested. If you have any more questions, please let me know. But to sum things up: Arabic support is basic now and I hope to vastly improve it soon. -- Tom. -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] Using evas to resize image
Guys, I want to use evas to resize an image file. I'm using the attached program, but it's saving a black rectangle instead of the resized image. Can someone point me what I'm doing wrong? Thanks. -- Rafael Fonseca ProFUSION embedded systems http://www.profusion.mobi #include limits.h #include Evas.h #include Ecore_Evas.h int main(int argc, char *argv[]) { int namelen, w, h, error; Evas *e; Ecore_Evas *ee; Evas_Object *img; char name[PATH_MAX], *ext; if (argc 2) { fprintf(stderr, Usage: %s image\n, argv[0]); return 1; } if (!ecore_evas_init()) { fprintf(stderr, Could not init ecore-evas\n); return 1; } ee = ecore_evas_buffer_new(480, 800); if (!ee) { fprintf(stderr, Could not create an ecore-evas\n); return 1; } e = ecore_evas_get(ee); if (!e) { fprintf(stderr, Could not get evas\n); return 1; } img = evas_object_image_add(e); if (!img) { fprintf(stderr, Could not add image obj\n); return -1; } evas_object_image_file_set(img, argv[1], NULL); error = evas_object_image_load_error_get(img); if (error != EVAS_LOAD_ERROR_NONE) { fprintf(stderr, could not load image %s\n, argv[1]); return -2; } evas_object_image_fill_set(img, 0, 0, 480, 800); evas_object_image_size_get(img, w, h); printf(Original size: %d x %d\n, w, h); if ((w = 0) || (h = 0)) return -3; namelen = strlen(argv[1]); ext = argv[1] + namelen - 4; memcpy(name, argv[1], namelen - 4); sprintf(name + namelen - 4, _resized%s, ext); /* This size set call is destroying my image buffer */ evas_object_image_size_set(img, 480, 800); if (!evas_object_image_save(img, name, NULL, NULL)) fprintf(stderr, Could not save image %s\n, name); evas_object_del(img); ecore_evas_free(ee); ecore_evas_shutdown(); return 0; } -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Using evas to resize image
On Mon, May 24, 2010 at 10:40 PM, Rafael Fonseca rfons...@profusion.mobi wrote: Guys, I want to use evas to resize an image file. I'm using the attached program, but it's saving a black rectangle instead of the resized image. Can someone point me what I'm doing wrong? Thanks. I don't see any evas_object_show in your code, maybe this is the problem ? -- Nicolas Aguirre Mail: aguirre.nico...@gmail.com Web: http://www.digital-corner.org -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Using evas to resize image
On Mon, May 24, 2010 at 5:40 PM, Rafael Fonseca rfons...@profusion.mobi wrote: Guys, I want to use evas to resize an image file. I'm using the attached program, but it's saving a black rectangle instead of the resized image. Can someone point me what I'm doing wrong? Nicolas might have found it, but next time copy the code from http://trac.enlightenment.org/e/wiki/EFLRecipes/Thumbnailer Or even better, although Ethumb main target is creating thumbnails at ~/.thumbnails, it can create images of any size anywhere, so just use it and avoid doing lots of work to avoid your application to block while it renders and then save... during that the app will queue X11 events in the socket and the mess is done. IOW: use Ethumb daemon and client API. BR, -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] e17 segfaulting on change of ibox or favorites or clicking on settings windows
On 05/22/2010 10:29 PM, Carsten Haitzler (The Rasterman) wrote: On Sat, 22 May 2010 21:06:28 -0500 David C. Rankin drankina...@suddenlinkmail.com said: quick test - did you build the svg loader for evas? check PREFIX/lib/evas/modules/loaders is there and svg dir? if so... rm -rfthe svg dir and try again. i've seen issues with librsvg before often enough to not trust it. Well, I guess Dimitry built svg for evas, because when I check, it's there: 17:53 alchemy:~ l /usr/lib64/evas/modules/loaders/ snip drwxr-xr-x 3 root root 4096 2010-05-20 18:13 svg/ I'll try removing the svg dir and report back. Thanks Carsten! -- David C. Rankin, J.D.,P.E. Rankin Law Firm, PLLC 510 Ochiltree Street Nacogdoches, Texas 75961 Telephone: (936) 715-9333 Facsimile: (936) 715-9339 www.rankinlawfirm.com -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] e17 segfaulting on change of ibox or favorites or clicking on settings windows
On 05/24/2010 12:11 PM, sda wrote: hello fellows, seems that your help is needed. current E-svn segv's only on openSUSE-11.0. this distro is a bit outdated and i suppose that some backports and fixes (CVE, etc) could be the reason of our issue. now i have 2 types of segfaults: 1) described by David below 2) gadcon container issue (can't add EFM modules to the EFM Toolbar) the 'gdb' output: http://pastebin.com/xPBFBpL2 also it may worth to mention that the direct edit of: $ vim ~/.e/e/applications/bar/default/.order file goes o'k and no segv's if we're manually adjust E config files. dunno if this case worth the discussion because oS-11.0 is not a 'modern' distro and the segv's are not reported for other SLE/oS versions. E-svn-r48925 regards, sda Thanks for helping Dmitry :-) I'll wait until we get some feedback before installing the new set of rpms. If I can just get one more good update before 11.0 gets to end of life, that would be worth its weight in gold. (I'm stuck with 11.0 due to the ATI screw the customer drop of all support for linux on pre-2400 series cards) As for not modern? Running 2.6.32, 4G/630G, all packages are up to date... not bad for an 'old' noteboot :p But, alas, if there were a working fglrx driver in 11.2 or 11.3 milestones, I'd make the jump, but no dice. (radeonhd blackscreens so that not an option). (actually, I'd probably jump to Arch to get out of the 'release # next' game and into a rolling release for my laptop). If you want me to run tests with your new packages, I'll go load them, I don't mind. But if it's just going to do the same thing, then it seems like an effort in futility. Let me know on that one. Also, if anybody else needs me to send more data or run tests, just let me know and I'll get it to you. Thanks! -- David C. Rankin, J.D.,P.E. Rankin Law Firm, PLLC 510 Ochiltree Street Nacogdoches, Texas 75961 Telephone: (936) 715-9333 Facsimile: (936) 715-9339 www.rankinlawfirm.com -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: bdilly trunk/TMP/st/elementary/src/lib
On Mon, May 24, 2010 at 10:48 PM, Bruno Dilly bdi...@profusion.mobi wrote: On Mon, May 24, 2010 at 12:06 AM, Iván Briano (Sachiel) sachi...@gmail.com wrote: On Mon, May 24, 2010 at 8:41 AM, Enlightenment SVN no-re...@enlightenment.org wrote: Log: Implement elm index sorted insert - Name index item as Elm_Index_Item - Add some other index functions: + Item find + Data get/set + Letter get I think this stuff will make easier to create index for dynamically created lists. Author: bdilly Date: 2010-05-23 16:41:32 -0700 (Sun, 23 May 2010) New Revision: 49171 Modified: trunk/TMP/st/elementary/src/lib/Elementary.h.in trunk/TMP/st/elementary/src/lib/elm_index.c Modified: trunk/TMP/st/elementary/src/lib/Elementary.h.in === --- trunk/TMP/st/elementary/src/lib/Elementary.h.in 2010-05-23 23:23:51 UTC (rev 49170) +++ trunk/TMP/st/elementary/src/lib/Elementary.h.in 2010-05-23 23:41:32 UTC (rev 49171) @@ -1266,6 +1266,7 @@ * vertical (two up/down buttons at the right side and text left aligned) */ + typedef struct _Elm_Index_Item Elm_Index_Item; EAPI Evas_Object *elm_index_add(Evas_Object *parent); EAPI void elm_index_active_set(Evas_Object *obj, Eina_Bool active); EAPI void elm_index_item_level_set(Evas_Object *obj, int level); @@ -1275,9 +1276,14 @@ EAPI void elm_index_item_prepend(Evas_Object *obj, const char *letter, const void *item); EAPI void elm_index_item_append_relative(Evas_Object *obj, const char *letter, const void *item, const void *relative); EAPI void elm_index_item_prepend_relative(Evas_Object *obj, const char *letter, const void *item, const void *relative); + EAPI void elm_index_item_sorted_insert(Evas_Object *obj, const char *letter, const void *item, Eina_Compare_Cb cmp_func, Eina_Compare_Cb cmp_data_func); EAPI void elm_index_item_del(Evas_Object *obj, const void *item); + EAPI Elm_Index_Item *elm_index_item_find(Evas_Object *obj, const void *item); EAPI void elm_index_item_clear(Evas_Object *obj); EAPI void elm_index_item_go(Evas_Object *obj, int level); + EAPI void *elm_index_item_data_get(const Elm_Index_Item *item); + EAPI void elm_index_item_data_set(Elm_Index_Item *it, const void *data); + EAPI const char *elm_index_item_letter_get(const Elm_Index_Item *item); /* smart callbacks called: * changed - when the selected index item changes * delay,changed - when the selected index item changes, but after some small idle period Modified: trunk/TMP/st/elementary/src/lib/elm_index.c === --- trunk/TMP/st/elementary/src/lib/elm_index.c 2010-05-23 23:23:51 UTC (rev 49170) +++ trunk/TMP/st/elementary/src/lib/elm_index.c 2010-05-23 23:41:32 UTC (rev 49171) @@ -9,7 +9,6 @@ */ typedef struct _Widget_Data Widget_Data; -typedef struct _Item Item; struct _Widget_Data { @@ -26,7 +25,7 @@ Eina_Bool down : 1; }; -struct _Item +struct _Elm_Index_Item { Evas_Object *obj; const char *letter; @@ -42,13 +41,13 @@ static void _sizing_eval(Evas_Object *obj); static void _index_box_auto_fill(Evas_Object *obj, Evas_Object *box, int level); static void _index_box_clear(Evas_Object *obj, Evas_Object *box, int level); -static void _item_free(Item *it); +static void _item_free(Elm_Index_Item *it); static void _del_hook(Evas_Object *obj) { Widget_Data *wd = elm_widget_data_get(obj); - Item *it; + Elm_Index_Item *it; Eina_List *l, *clear = NULL; if (!wd) return; _index_box_clear(obj, wd-bx[wd-level], wd-level); @@ -138,13 +137,13 @@ evas_object_size_hint_max_set(obj, maxw, maxh); } -static Item * +static Elm_Index_Item * _item_new(Evas_Object *obj, const char *letter, const void *item) { Widget_Data *wd = elm_widget_data_get(obj); - Item *it; + Elm_Index_Item *it; if (!wd) return NULL; - it = calloc(1, sizeof(Item)); + it = calloc(1, sizeof(Elm_Index_Item)); if (!it) return NULL; it-obj = obj; it-letter = eina_stringshare_add(letter); @@ -153,12 +152,12 @@ return it; } -static Item * +static Elm_Index_Item * _item_find(Evas_Object *obj, const void *item) { Widget_Data *wd = elm_widget_data_get(obj); Eina_List *l; - Item *it; + Elm_Index_Item *it; if (!wd) return NULL; EINA_LIST_FOREACH(wd-items, l, it) if (it-data == item) return it; @@ -166,7 +165,7 @@ } static void -_item_free(Item *it) +_item_free(Elm_Index_Item *it) { Widget_Data *wd = elm_widget_data_get(it-obj); if (!wd) return; @@ -182,7 +181,7 @@ { Widget_Data *wd = elm_widget_data_get(obj); Eina_List *l; - Item *it; + Elm_Index_Item *it; Evas_Coord mw, mh, w, h; int i = 0;
Re: [E-devel] Check if image file is recalsed
Thanks for the replies. If I want to know whether the image is rescaled automatically by EFL such as when enlarging window which contains image object. How can I do? any suggestions? 2010/5/24 Atton Jonathan jonathan.at...@gmail.com sorry, this is evas_object_image_filled_set 2010/5/24 Atton Jonathan jonathan.at...@gmail.com or : evas_object_image_file_set 1 time and then when you rezise : evas_object_resize 2010/5/24 Vincent Torri vto...@univ-evry.fr On Mon, 24 May 2010, whtuhtc tu wrote: Hi, If I want to check if the image file is rescaled by EFL, where can I log or print a message to reminder me? To resize the image itself: evas_object_image_size_set(o, width, height); evas_object_image_fill_set(o, 0, 0, width, height); To resize the Evas_Object that will display the image: evas_object_resize(o, width, height); So, if you do: evas_object_image_size_set(o, 2 * width, 2 * height); evas_object_image_fill_set(o, 0, 0, 2 * width, 2 * height); evas_object_resize(o, width, height); the image will have twice its width and height, but you will only see a quarter of it. Vincent Are there only evas_object_resize and evas_object_image_fill_set used to rescaled image file? Thanks in advance. whtuhtc -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Regards. -- Regards. -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Check if image file is recalsed
On Mon, May 24, 2010 at 10:48 PM, whtuhtc tu whtu...@gmail.com wrote: Thanks for the replies. If I want to know whether the image is rescaled automatically by EFL such as when enlarging window which contains image object. How can I do? you can't know about images being rescaled, as this is the image-fill property as explained in this thread. but the property does not change automatically, you must do it yourself. if you are looking for edje or evas_object_image_filled, these will act when object is resized, matching the fill and the following code may help: evas_object_event_callback_add(img, EVAS_CALLBACK_RESIZE, _img_resized_cb, _some_context_data); -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel