Re: [E-devel] sound api plan
Le lundi 7 novembre 2011 04:33:10, Carsten Haitzler a écrit : attached. this was a sample edc that would be able to play audio, not just single samples but whole sequences across multiple tracks as well as control specific channels and tracks. it didn't specify looping params yet or other additional stuff. Such a huge thing just to play sound in edje... Is it really necessary to have all this in edje or are you just nostalgic of the good old days of trackers?? -- Raoul Hecky Calaos -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] sound api plan
Raster, I'm still on the road reading mails at phone until tomorrow, let me check this tomorrow After a quick look at the EDC, it's very different from what edje does today, which may be a major pain for most users. They won't be musicians, but rather some people scheduling a background music and some feedback effects. There are also some limits like stereo and allocation of channels. In my opinion this API should learn from edje mistakes and provide an even easier API. Try to think of some use cases and plan the examples. Not trying to fill all possible soundtracking cases. Moreover, very few people that knows music will do EDC directly, they will propably use some Windows or OSX app they are experienced and then ask a programmer to convert. Then some way to generate or load should be planned latter, maybe removing the need for the complex case? Analogy: you can specify an svg to be loaded or all the parts as native EDC One major difference from now, even in the simple program{} case is that you need to refer to channel numbers and not program names. Today we stop animations and all based on names. Also seems some specification syntax is upside down, following C mindset of declare and use. This is proven to be confusing for most EDC users. It's better to have nested declarations. Will check it in details later. On Monday, November 7, 2011, Carsten Haitzler ras...@rasterman.com wrote: attached. this was a sample edc that would be able to play audio, not just single samples but whole sequences across multiple tracks as well as control specific channels and tracks. it didn't specify looping params yet or other additional stuff. -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] sound api plan
There are simple cases in his file, but I had the same feeling as you. From an overview this seems like an alien in Edje. It would be nice to have some use cases as focus and streamline them. The rest can remain as is or be removed. But common cases must be simple, straightforward and coherent with existing syntax. On Monday, November 7, 2011, Raoul Hecky raoul.he...@gmail.com wrote: Le lundi 7 novembre 2011 04:33:10, Carsten Haitzler a écrit : attached. this was a sample edc that would be able to play audio, not just single samples but whole sequences across multiple tracks as well as control specific channels and tracks. it didn't specify looping params yet or other additional stuff. Such a huge thing just to play sound in edje... Is it really necessary to have all this in edje or are you just nostalgic of the good old days of trackers?? -- Raoul Hecky Calaos -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: raster trunk/edje/src/modules/alsa_snd_player
Please convert to proper eina log. I'd use one domain per backend, they are separated modules. On Monday, November 7, 2011, Enlightenment SVN no-re...@enlightenment.org wrote: Log: and some more cleaning/formatting in alsa code Author: raster Date: 2011-11-06 21:57:46 -0800 (Sun, 06 Nov 2011) New Revision: 64855 Trac: http://trac.enlightenment.org/e/changeset/64855 Modified: trunk/edje/src/modules/alsa_snd_player/alsa_snd_player.c Modified: trunk/edje/src/modules/alsa_snd_player/alsa_snd_player.c === --- trunk/edje/src/modules/alsa_snd_player/alsa_snd_player.c 2011-11-07 05:45:00 UTC (rev 64854) +++ trunk/edje/src/modules/alsa_snd_player/alsa_snd_player.c 2011-11-07 05:57:46 UTC (rev 64855) @@ -43,72 +43,69 @@ if ((err = snd_pcm_open(alsa_dev, device, SND_PCM_STREAM_PLAYBACK, 0)) 0) { +printf(cannot open alsa playback stream (%s)\n, snd_strerror(err)); goto catch_error; } - if ((err = snd_pcm_hw_params_malloc(hw_params)) 0) { +printf(cannot alloc snd hw params (%s)\n, snd_strerror(err)); goto catch_error; } - if ((err = snd_pcm_hw_params_any(alsa_dev, hw_params)) 0) { -printf(cannot initialize hardware parameter structure (%s)\n, snd_strerror(err)); +printf(cannot initialize snd hw params (%s)\n, snd_strerror(err)); goto catch_error; } - - if ((err = snd_pcm_hw_params_set_access(alsa_dev, hw_params, SND_PCM_ACCESS_RW_INTERLEAVED)) 0) + if ((err = snd_pcm_hw_params_set_access(alsa_dev, hw_params, + SND_PCM_ACCESS_RW_INTERLEAVED)) 0) { printf(cannot set access type (%s)\n, snd_strerror(err)); goto catch_error; } - - if ((err = snd_pcm_hw_params_set_format(alsa_dev, hw_params, SND_PCM_FORMAT_FLOAT)) 0) + if ((err = snd_pcm_hw_params_set_format(alsa_dev, hw_params, + SND_PCM_FORMAT_FLOAT)) 0) { // FIXME: handle if float format not possible printf(cannot set sample format (%s)\n, snd_strerror(err)); goto catch_error; } - - if ((err = snd_pcm_hw_params_set_rate_near(alsa_dev, hw_params, samplerate, 0)) 0) + if ((err = snd_pcm_hw_params_set_rate_near(alsa_dev, hw_params, + samplerate, 0)) 0) { // FIXME: get actual sample rate and tell remix printf(cannot set sample rate (%s)\n, snd_strerror(err)); goto catch_error; } - if ((err = snd_pcm_hw_params_set_channels(alsa_dev, hw_params, channels)) 0) { printf(cannot set channel count (%s)\n, snd_strerror(err)); goto catch_error; } - - if ((err = snd_pcm_hw_params_set_buffer_size_near(alsa_dev, hw_params, alsa_buffer_frames)) 0) + if ((err = snd_pcm_hw_params_set_buffer_size_near(alsa_dev, hw_params, + alsa_buffer_frames)) 0) { fprintf(stderr, cannot set buffer size (%s)\n, snd_strerror(err)); goto catch_error; } - - if ((err = snd_pcm_hw_params_set_period_size_near(alsa_dev, hw_params, alsa_period_size, 0)) 0) + if ((err = snd_pcm_hw_params_set_period_size_near(alsa_dev, hw_params, + alsa_period_size, 0)) 0) { fprintf(stderr, cannot set period size (%s)\n, snd_strerror(err)); goto catch_error; } - if ((err = snd_pcm_hw_params(alsa_dev, hw_params)) 0) { printf(cannot set parameters (%s)\n, snd_strerror(err)); goto catch_error; } - snd_pcm_hw_params_free(hw_params); if ((err = snd_pcm_prepare(alsa_dev)) 0) { -printf(cannot prepare audio interface for use (%s)\n, snd_strerror(err)); +printf(cannot prepare audio for use (%s)\n, snd_strerror(err)); goto catch_error; } - catch_error: +catch_error: if ((err 0) (alsa_dev != NULL)) { snd_pcm_close(alsa_dev); @@ -127,7 +124,8 @@ snd_pcm_drain(player_data-alsa_dev); snd_pcm_close(player_data-alsa_dev); } - player_data-alsa_dev = alsa_open(player_data-channels, player_data-frequency); + player_data-alsa_dev = alsa_open(player_data-channels, + player_data-frequency); if (!player_data-alsa_dev) { remix_set_error(env, REMIX_ERROR_SYSTEM); @@ -152,10 +150,8 @@ channels = remix_get_channels(env); player_data-channels = cd_set_size(env, channels); - if (player_data-channels == 1) - player_data-stereo = 0; - else if (player_data-channels == 2) - player_data-stereo = 1; + if (player_data-channels == 1) player_data-stereo = 0; + else if (player_data-channels == 2) player_data-stereo = 1; player_data-frequency = remix_get_samplerate(env); alsa_player_reset_device(env, base);
Re: [E-devel] [PATCH] Edje lua API additions
On Mon, 7 Nov 2011 14:46:46 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Sun, 6 Nov 2011 23:22:48 +1000 David Seikel onef...@gmail.com said: On Sun, 6 Nov 2011 22:12:40 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Sun, 6 Nov 2011 22:04:35 +1000 David Seikel onef...@gmail.com said: Looks like I'm not gonna get lua textblock done in time. It's a big API, and therefore plenty to argue^H^H^H^H^H debate^H^H^H^H^H^H flame^H^H^H^H^H decide. We will need more time for that, so it wont make it for this freeze. I tried the new sound thingy, just compiling an old edje that had no sound in it killed my pulse. I can't work with that, so I'm not gonna include lua API for sound for this release. Someone else might. how did it kill it? u mean edje_cc killed pulse? Running edje_cc on some random .edc file caused pulse to go silent. I had some error message which I posted on IRC at the time - edje_cc lua_script.edc test.edj ALSA player_plugin init fail weird... and no errors before this? With latest SVN as of right now I get - edje_cc lua_script.edc test.edj ALSA player_plugin init fail Couldn't open any output device. And pulse keeps playing. Much better, but still should not print error messages from trying to open sound hardware it's not going to use. It did in fact compile the .edc. Getting the same error message from running the resulting edj file with edje_player. It's odd that it's the compiler doing that though. Why would the compiler need to fiddle with sound hardware? That's the job of runtime. well edje is initting - it means it inits modules too and that means multisense inits which asks remix to init and remix inits its output too. That's why it's doing it, but still does not excuse a compiler from diddling with hardware and causing spurious error messages that are entirely meaningless and have absolutely nothing to do with the functions of a compiler. That's just gonna confuse people, and scare them. I'll try my usual almost complete build of svn with multisense enabled and see what happens. BTW, this is with edje tweaked to use sndfile 10.0.21 as we discussed before, so it can compile multisense on Ubuntu 10.04. Too late to include lua support for sound though, the feature freeze should be starting any moment now. -- A big old stinking pile of genius that no one wants coz there are too many silver coated monkeys in the world. signature.asc Description: PGP signature -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] sound api plan
On Mon, 7 Nov 2011 11:00:24 +0100 Raoul Hecky raoul.he...@gmail.com said: Le lundi 7 novembre 2011 04:33:10, Carsten Haitzler a écrit : attached. this was a sample edc that would be able to play audio, not just single samples but whole sequences across multiple tracks as well as control specific channels and tracks. it didn't specify looping params yet or other additional stuff. Such a huge thing just to play sound in edje... Is it really necessary to have all this in edje or are you just nostalgic of the good old days of trackers?? DAMNED STRAIGHT I AM! :) i just discovered milkytracker! i'm enjoying myself thoroughly! :) seriously though... you CAN still just play samples.. then play samples WITH volume envelopes and looping (sounds as this glues sample+envelopes) and then play entire sequences (a series of samples played with timing), which is the basics for most musical scoring, then combine these into multiple track patterns and put them together into whole songs if u want. it drops down to the simple and up to the whole compose a whole score end of things. if all you ever choose to do is play samples - then its largely irrelevant. reality is that if you want to have complex sound effects you need to start doing all of these little bits. :) let me give an example. scrolling. you want to play some wind blowing when you first start to drag - this may consist of 2 or 3 channels of sound with various wind samples overlayed at staggered intervals to give the impression of something that isn't always looping and repeating (it's a neat trick you also can do with overlayed images). you want this song to fade in then keep looping a few patterns where you really are using 5 or so 5 second samples to create several minutes of wind sound. now when you actually MOVE your mouse (or finger) you year some tinkling sounds that sound like the small glass bells being shaken. these play and fade out becoming quieter the slower your drag and varying pitch depending on how high or low your position is on the scroll range. you would implement these with another few tacks like the wind, applying modifiers for pitch and volume of the play instructions. the bell sample can be 2 or 3 samples like the wind to give the impression of many distinct bells, just played at differing speeds for pitches (you can normally go up 1 octave before it sounds just odd and want to get a new sampling). i learned a lesson from E 0.1- 0.13 and ebits - they were too limited. they couldn't do enough. the example i gave here is the most complex version. it reduces to simpler use. you can play just a sample. play a sound (that joins sample + effects like envelopes, later looping info), or songs. you don't HAVE to do songs. you can stick to samples and sounds. as such this is what edje does with images, but with audio. with images you have geometry and stacking. with audio you have timing and channels. as for channels - i have considered naming too, but the structure is the same. if you omit channel we can just have it default to the auto channel (ie create new channel for sound as long as it plays). nb - that example is a test case. it's twinkle twinkle little star. :) i've been thinking of the cases where we want audio feedback based on slider value and positions, speed at which it is dragged and what you are touching or dragging over at the time etc. nb - i did keep the same syntax as the rest of edje as at least it's consistent. you declare what sample is what and how to encode, then use it - same with envelopes etc. etc. - edje can actually do this in any order as it does a 2nd pass lookup like it does now. you can use then declare later if u want. oh and yes - i actually was expecting to have tools that can convert from music composition formats to edc at some point. the song thing allows us to later literally inline and use mods/xm/s3m files that have gui editors already - even for linux (yay found milkytracker). problem is these formats traditionally never supported compressed samples, (ogg or flac for example) and thats a problem and why i'd prefer a convert. -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: raster trunk/edje/src/modules/alsa_snd_player
On Mon, 7 Nov 2011 09:37:09 -0200 Gustavo Sverzut Barbieri barbi...@profusion.mobi said: bigger fish to fry atm. Please convert to proper eina log. I'd use one domain per backend, they are separated modules. On Monday, November 7, 2011, Enlightenment SVN no-re...@enlightenment.org wrote: Log: and some more cleaning/formatting in alsa code Author: raster Date: 2011-11-06 21:57:46 -0800 (Sun, 06 Nov 2011) New Revision: 64855 Trac: http://trac.enlightenment.org/e/changeset/64855 Modified: trunk/edje/src/modules/alsa_snd_player/alsa_snd_player.c Modified: trunk/edje/src/modules/alsa_snd_player/alsa_snd_player.c === --- trunk/edje/src/modules/alsa_snd_player/alsa_snd_player.c 2011-11-07 05:45:00 UTC (rev 64854) +++ trunk/edje/src/modules/alsa_snd_player/alsa_snd_player.c 2011-11-07 05:57:46 UTC (rev 64855) @@ -43,72 +43,69 @@ if ((err = snd_pcm_open(alsa_dev, device, SND_PCM_STREAM_PLAYBACK, 0)) 0) { +printf(cannot open alsa playback stream (%s)\n, snd_strerror(err)); goto catch_error; } - if ((err = snd_pcm_hw_params_malloc(hw_params)) 0) { +printf(cannot alloc snd hw params (%s)\n, snd_strerror(err)); goto catch_error; } - if ((err = snd_pcm_hw_params_any(alsa_dev, hw_params)) 0) { -printf(cannot initialize hardware parameter structure (%s)\n, snd_strerror(err)); +printf(cannot initialize snd hw params (%s)\n, snd_strerror(err)); goto catch_error; } - - if ((err = snd_pcm_hw_params_set_access(alsa_dev, hw_params, SND_PCM_ACCESS_RW_INTERLEAVED)) 0) + if ((err = snd_pcm_hw_params_set_access(alsa_dev, hw_params, + SND_PCM_ACCESS_RW_INTERLEAVED)) 0) { printf(cannot set access type (%s)\n, snd_strerror(err)); goto catch_error; } - - if ((err = snd_pcm_hw_params_set_format(alsa_dev, hw_params, SND_PCM_FORMAT_FLOAT)) 0) + if ((err = snd_pcm_hw_params_set_format(alsa_dev, hw_params, + SND_PCM_FORMAT_FLOAT)) 0) { // FIXME: handle if float format not possible printf(cannot set sample format (%s)\n, snd_strerror(err)); goto catch_error; } - - if ((err = snd_pcm_hw_params_set_rate_near(alsa_dev, hw_params, samplerate, 0)) 0) + if ((err = snd_pcm_hw_params_set_rate_near(alsa_dev, hw_params, + samplerate, 0)) 0) { // FIXME: get actual sample rate and tell remix printf(cannot set sample rate (%s)\n, snd_strerror(err)); goto catch_error; } - if ((err = snd_pcm_hw_params_set_channels(alsa_dev, hw_params, channels)) 0) { printf(cannot set channel count (%s)\n, snd_strerror(err)); goto catch_error; } - - if ((err = snd_pcm_hw_params_set_buffer_size_near(alsa_dev, hw_params, alsa_buffer_frames)) 0) + if ((err = snd_pcm_hw_params_set_buffer_size_near(alsa_dev, hw_params, + alsa_buffer_frames)) 0) { fprintf(stderr, cannot set buffer size (%s)\n, snd_strerror(err)); goto catch_error; } - - if ((err = snd_pcm_hw_params_set_period_size_near(alsa_dev, hw_params, alsa_period_size, 0)) 0) + if ((err = snd_pcm_hw_params_set_period_size_near(alsa_dev, hw_params, + alsa_period_size, 0)) 0) { fprintf(stderr, cannot set period size (%s)\n, snd_strerror(err)); goto catch_error; } - if ((err = snd_pcm_hw_params(alsa_dev, hw_params)) 0) { printf(cannot set parameters (%s)\n, snd_strerror(err)); goto catch_error; } - snd_pcm_hw_params_free(hw_params); if ((err = snd_pcm_prepare(alsa_dev)) 0) { -printf(cannot prepare audio interface for use (%s)\n, snd_strerror(err)); +printf(cannot prepare audio for use (%s)\n, snd_strerror(err)); goto catch_error; } - catch_error: +catch_error: if ((err 0) (alsa_dev != NULL)) { snd_pcm_close(alsa_dev); @@ -127,7 +124,8 @@ snd_pcm_drain(player_data-alsa_dev); snd_pcm_close(player_data-alsa_dev); } - player_data-alsa_dev = alsa_open(player_data-channels, player_data-frequency); + player_data-alsa_dev = alsa_open(player_data-channels, + player_data-frequency); if (!player_data-alsa_dev) { remix_set_error(env, REMIX_ERROR_SYSTEM); @@ -152,10 +150,8 @@ channels = remix_get_channels(env); player_data-channels = cd_set_size(env, channels); - if (player_data-channels == 1) - player_data-stereo = 0; - else if (player_data-channels == 2) -
Re: [E-devel] sound api plan
On Mon, 7 Nov 2011 21:36:43 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Mon, 7 Nov 2011 11:00:24 +0100 Raoul Hecky raoul.he...@gmail.com said: Le lundi 7 novembre 2011 04:33:10, Carsten Haitzler a écrit : attached. this was a sample edc that would be able to play audio, not just single samples but whole sequences across multiple tracks as well as control specific channels and tracks. it didn't specify looping params yet or other additional stuff. Such a huge thing just to play sound in edje... Is it really necessary to have all this in edje or are you just nostalgic of the good old days of trackers?? DAMNED STRAIGHT I AM! :) i just discovered milkytracker! i'm enjoying myself thoroughly! :) seriously though... you CAN still just play samples.. then play samples WITH volume envelopes and looping (sounds as this glues sample+envelopes) and then play entire sequences (a series of samples played with timing), which is the basics for most musical scoring, then combine these into multiple track patterns and put them together into whole songs if u want. it drops down to the simple and up to the whole compose a whole score end of things. if all you ever choose to do is play samples - then its largely irrelevant. reality is that if you want to have complex sound effects you need to start doing all of these little bits. :) let me give an example. scrolling. you want to play some wind blowing when you first start to drag - this may consist of 2 or 3 channels of sound with various wind samples overlayed at staggered intervals to give the impression of something that isn't always looping and repeating (it's a neat trick you also can do with overlayed images). you want this song to fade in then keep looping a few patterns where you really are using 5 or so 5 second samples to create several minutes of wind sound. now when you actually MOVE your mouse (or finger) you year some tinkling sounds that sound like the small glass bells being shaken. these play and fade out becoming quieter the slower your drag and varying pitch depending on how high or low your position is on the scroll range. you would implement these with another few tacks like the wind, applying modifiers for pitch and volume of the play instructions. the bell sample can be 2 or 3 samples like the wind to give the impression of many distinct bells, just played at differing speeds for pitches (you can normally go up 1 octave before it sounds just odd and want to get a new sampling). I'm excited by that. B-) However, with multisense turned on (Ubuntu 10.04, sndfile 1.0.21), when it gets to compiling elementary's edje files I get - /opt/e17/bin/edje_cc -id ../../data/themes -fd ../../data/themes \ --../../data/themes/default.edc \ --../../data/themes/default.edj /opt/e17/bin/edje_cc -id ../../data/themes -fd ../../data/themes \ --../../data/themes/default-desktop.edc \ --../../data/themes/default-desktop.edj ALSA player_plugin init fail Couldn't open any output device. ALSA player_plugin init fail Couldn't open any output device. make[3]: Leaving directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/themes' Making all in images make[3]: Entering directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/images' make[3]: Nothing to be done for `all'. make[3]: Leaving directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/images' Making all in objects make[3]: Entering directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/objects' /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/test.edc \ --../../data/objects/test.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/multip.edc \ --../../data/objects/multip.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/colorpreview.edc \ --../../data/objects/colorpreview.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/cursors.edc \ --../../data/objects/cursors.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/font_preview.edc \ --../../data/objects/font_preview.edj ALSA player_plugin init fail Couldn't open any output device. /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/postit_ent.edc \ --../../data/objects/postit_ent.edj ALSA player_plugin init fail Couldn't open any output device. ALSA player_plugin init fail Couldn't open any output device. ALSA player_plugin init fail Couldn't open any output device. make[3]: *** [postit_ent.edj] Segmentation fault make[3]: *** Deleting file `postit_ent.edj' Oops. Make -j is jumbling that up a bit. Still trying it out on other things in SVN. -- A big old stinking pile of genius that no one wants coz there are too many silver coated monkeys in the world.
[E-devel] Improving Elementary for the release
Hi all, We are going to try releasing Elementary soon after the release of the EFL 1.1. I would like to start a discussion now on what should be done to prepare Elementary for a release. I have been doing a quick overview of Elementary.h. The first problem is that we have a lot of structure in it that should be allocated by the application and they don't have any information about version or size, so we will not be able to touch them after the release anymore. That's bad, I think we need to fix that by adding function that will do the allocation and zero the memory before giving the pointer to the app. The second point is about both gengrid and genlist. I would like to add a few new callback : - content_set/content_unset: when set, content_get will return an object, but it will be reused and it's real content will be set and unset later. This permit the implementation of some cache mechanisme directly inside elm_gen. - label_free: if set, it will be able to override the call to free. This could help, I have found many times that I am using stringshare or static string that really don't need to be strdup. Btw I don't like the name of that callback This second list of change should not break API/ABI once the first change are done. So not a big hurry, but they are simple to do and should help provide better performance. Of course I don't plan to play with this until the EFL 1.1 are out, so you have time for comment. I put here only the thing I want to do and how I plan to fix them. If you have some idea of what need to be fixed in Elementary before the release and how you want to do it, maybe answering to this thread will be a good idea. Have fun, -- Cedric BAIL -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] sound api plan
On Mon, 7 Nov 2011 22:48:04 +1000 David Seikel onef...@gmail.com wrote: On Mon, 7 Nov 2011 21:36:43 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Mon, 7 Nov 2011 11:00:24 +0100 Raoul Hecky raoul.he...@gmail.com said: Le lundi 7 novembre 2011 04:33:10, Carsten Haitzler a écrit : attached. this was a sample edc that would be able to play audio, not just single samples but whole sequences across multiple tracks as well as control specific channels and tracks. it didn't specify looping params yet or other additional stuff. Such a huge thing just to play sound in edje... Is it really necessary to have all this in edje or are you just nostalgic of the good old days of trackers?? DAMNED STRAIGHT I AM! :) i just discovered milkytracker! i'm enjoying myself thoroughly! :) seriously though... you CAN still just play samples.. then play samples WITH volume envelopes and looping (sounds as this glues sample+envelopes) and then play entire sequences (a series of samples played with timing), which is the basics for most musical scoring, then combine these into multiple track patterns and put them together into whole songs if u want. it drops down to the simple and up to the whole compose a whole score end of things. if all you ever choose to do is play samples - then its largely irrelevant. reality is that if you want to have complex sound effects you need to start doing all of these little bits. :) let me give an example. scrolling. you want to play some wind blowing when you first start to drag - this may consist of 2 or 3 channels of sound with various wind samples overlayed at staggered intervals to give the impression of something that isn't always looping and repeating (it's a neat trick you also can do with overlayed images). you want this song to fade in then keep looping a few patterns where you really are using 5 or so 5 second samples to create several minutes of wind sound. now when you actually MOVE your mouse (or finger) you year some tinkling sounds that sound like the small glass bells being shaken. these play and fade out becoming quieter the slower your drag and varying pitch depending on how high or low your position is on the scroll range. you would implement these with another few tacks like the wind, applying modifiers for pitch and volume of the play instructions. the bell sample can be 2 or 3 samples like the wind to give the impression of many distinct bells, just played at differing speeds for pitches (you can normally go up 1 octave before it sounds just odd and want to get a new sampling). I'm excited by that. B-) However, with multisense turned on (Ubuntu 10.04, sndfile 1.0.21), when it gets to compiling elementary's edje files I get - /opt/e17/bin/edje_cc -id ../../data/themes -fd ../../data/themes \ --../../data/themes/default.edc \ --../../data/themes/default.edj /opt/e17/bin/edje_cc -id ../../data/themes -fd ../../data/themes \ --../../data/themes/default-desktop.edc \ --../../data/themes/default-desktop.edj ALSA player_plugin init fail Couldn't open any output device. ALSA player_plugin init fail Couldn't open any output device. make[3]: Leaving directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/themes' Making all in images make[3]: Entering directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/images' make[3]: Nothing to be done for `all'. make[3]: Leaving directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/images' Making all in objects make[3]: Entering directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/objects' /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/test.edc \ --../../data/objects/test.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/multip.edc \ --../../data/objects/multip.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/colorpreview.edc \ --../../data/objects/colorpreview.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/cursors.edc \ --../../data/objects/cursors.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/font_preview.edc \ --../../data/objects/font_preview.edj ALSA player_plugin init fail Couldn't open any output device. /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/postit_ent.edc \ --../../data/objects/postit_ent.edj ALSA player_plugin init fail Couldn't open any output device. ALSA player_plugin init fail Couldn't open any output device. ALSA player_plugin init fail Couldn't open any output device. make[3]: *** [postit_ent.edj] Segmentation fault make[3]: *** Deleting file `postit_ent.edj' Oops. Make -j is jumbling
Re: [E-devel] sound api plan
On Mon, 7 Nov 2011 23:55:24 +1000 David Seikel onef...@gmail.com wrote: On Mon, 7 Nov 2011 22:48:04 +1000 David Seikel onef...@gmail.com wrote: On Mon, 7 Nov 2011 21:36:43 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Mon, 7 Nov 2011 11:00:24 +0100 Raoul Hecky raoul.he...@gmail.com said: Le lundi 7 novembre 2011 04:33:10, Carsten Haitzler a écrit : attached. this was a sample edc that would be able to play audio, not just single samples but whole sequences across multiple tracks as well as control specific channels and tracks. it didn't specify looping params yet or other additional stuff. Such a huge thing just to play sound in edje... Is it really necessary to have all this in edje or are you just nostalgic of the good old days of trackers?? DAMNED STRAIGHT I AM! :) i just discovered milkytracker! i'm enjoying myself thoroughly! :) seriously though... you CAN still just play samples.. then play samples WITH volume envelopes and looping (sounds as this glues sample+envelopes) and then play entire sequences (a series of samples played with timing), which is the basics for most musical scoring, then combine these into multiple track patterns and put them together into whole songs if u want. it drops down to the simple and up to the whole compose a whole score end of things. if all you ever choose to do is play samples - then its largely irrelevant. reality is that if you want to have complex sound effects you need to start doing all of these little bits. :) let me give an example. scrolling. you want to play some wind blowing when you first start to drag - this may consist of 2 or 3 channels of sound with various wind samples overlayed at staggered intervals to give the impression of something that isn't always looping and repeating (it's a neat trick you also can do with overlayed images). you want this song to fade in then keep looping a few patterns where you really are using 5 or so 5 second samples to create several minutes of wind sound. now when you actually MOVE your mouse (or finger) you year some tinkling sounds that sound like the small glass bells being shaken. these play and fade out becoming quieter the slower your drag and varying pitch depending on how high or low your position is on the scroll range. you would implement these with another few tacks like the wind, applying modifiers for pitch and volume of the play instructions. the bell sample can be 2 or 3 samples like the wind to give the impression of many distinct bells, just played at differing speeds for pitches (you can normally go up 1 octave before it sounds just odd and want to get a new sampling). I'm excited by that. B-) However, with multisense turned on (Ubuntu 10.04, sndfile 1.0.21), when it gets to compiling elementary's edje files I get - /opt/e17/bin/edje_cc -id ../../data/themes -fd ../../data/themes \ --../../data/themes/default.edc \ --../../data/themes/default.edj /opt/e17/bin/edje_cc -id ../../data/themes -fd ../../data/themes \ --../../data/themes/default-desktop.edc \ --../../data/themes/default-desktop.edj ALSA player_plugin init fail Couldn't open any output device. ALSA player_plugin init fail Couldn't open any output device. make[3]: Leaving directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/themes' Making all in images make[3]: Entering directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/images' make[3]: Nothing to be done for `all'. make[3]: Leaving directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/images' Making all in objects make[3]: Entering directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/objects' /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/test.edc \ --../../data/objects/test.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/multip.edc \ --../../data/objects/multip.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/colorpreview.edc \ --../../data/objects/colorpreview.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/cursors.edc \ --../../data/objects/cursors.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/font_preview.edc \ --../../data/objects/font_preview.edj ALSA player_plugin init fail Couldn't open any output device. /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/postit_ent.edc \ --../../data/objects/postit_ent.edj ALSA player_plugin init fail Couldn't open any output device. ALSA player_plugin init fail Couldn't open any output device. ALSA
Re: [E-devel] E SVN: raster trunk/edje/src/modules/alsa_snd_player
Sorry, I know this is nitpicking but why don't you use it from start? It's easier than printf() On Monday, November 7, 2011, Carsten Haitzler ras...@rasterman.com wrote: On Mon, 7 Nov 2011 09:37:09 -0200 Gustavo Sverzut Barbieri barbi...@profusion.mobi said: bigger fish to fry atm. Please convert to proper eina log. I'd use one domain per backend, they are separated modules. On Monday, November 7, 2011, Enlightenment SVN no-re...@enlightenment.org wrote: Log: and some more cleaning/formatting in alsa code Author: raster Date: 2011-11-06 21:57:46 -0800 (Sun, 06 Nov 2011) New Revision: 64855 Trac: http://trac.enlightenment.org/e/changeset/64855 Modified: trunk/edje/src/modules/alsa_snd_player/alsa_snd_player.c Modified: trunk/edje/src/modules/alsa_snd_player/alsa_snd_player.c === --- trunk/edje/src/modules/alsa_snd_player/alsa_snd_player.c 2011-11-07 05:45:00 UTC (rev 64854) +++ trunk/edje/src/modules/alsa_snd_player/alsa_snd_player.c 2011-11-07 05:57:46 UTC (rev 64855) @@ -43,72 +43,69 @@ if ((err = snd_pcm_open(alsa_dev, device, SND_PCM_STREAM_PLAYBACK, 0)) 0) { +printf(cannot open alsa playback stream (%s)\n, snd_strerror(err)); goto catch_error; } - if ((err = snd_pcm_hw_params_malloc(hw_params)) 0) { +printf(cannot alloc snd hw params (%s)\n, snd_strerror(err)); goto catch_error; } - if ((err = snd_pcm_hw_params_any(alsa_dev, hw_params)) 0) { -printf(cannot initialize hardware parameter structure (%s)\n, snd_strerror(err)); +printf(cannot initialize snd hw params (%s)\n, snd_strerror(err)); goto catch_error; } - - if ((err = snd_pcm_hw_params_set_access(alsa_dev, hw_params, SND_PCM_ACCESS_RW_INTERLEAVED)) 0) + if ((err = snd_pcm_hw_params_set_access(alsa_dev, hw_params, + SND_PCM_ACCESS_RW_INTERLEAVED)) 0) { printf(cannot set access type (%s)\n, snd_strerror(err)); goto catch_error; } - - if ((err = snd_pcm_hw_params_set_format(alsa_dev, hw_params, SND_PCM_FORMAT_FLOAT)) 0) + if ((err = snd_pcm_hw_params_set_format(alsa_dev, hw_params, + SND_PCM_FORMAT_FLOAT)) 0) { // FIXME: handle if float format not possible printf(cannot set sample format (%s)\n, snd_strerror(err)); goto catch_error; } - - if ((err = snd_pcm_hw_params_set_rate_near(alsa_dev, hw_params, samplerate, 0)) 0) + if ((err = snd_pcm_hw_params_set_rate_near(alsa_dev, hw_params, + samplerate, 0)) 0) { // FIXME: get actual sample rate and tell remix printf(cannot set sample rate (%s)\n, snd_strerror(err)); goto catch_error; } - if ((err = snd_pcm_hw_params_set_channels(alsa_dev, hw_params, channels)) 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 -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] Ethumb
Cedric, Will you have time to fix ethumb for EFL 1.1 timeframe? If no then i'll remove the async patches and release ethumb as 1.0 using the old API, changing elm as well. It's better to have bit slow API that is correct than the current one, also bindings will be possible. Etc. Let me know what to do. -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Ethumb
Post 1.1 but before elm? Actually I'm more worried with elm. It will be the biggest user and want a release that works wit it On Monday, November 7, 2011, Cedric BAIL cedric.b...@free.fr wrote: On Mon, Nov 7, 2011 at 3:50 PM, Gustavo Sverzut Barbieri barbi...@profusion.mobi wrote: Cedric, Will you have time to fix ethumb for EFL 1.1 timeframe? If no then i'll remove the async patches and release ethumb as 1.0 using the old API, changing elm as well. It's better to have bit slow API that is correct than the current one, also bindings will be possible. Etc. Clearly not. It's on my todo, but for post 1.1 as it is not a priority since it isn't in the released libraries. I have no problem if you want to rollback, but I may need to break the API/ABI of ethumb later. I want to split computation of the md5 from the call to stat. -- Cedric BAIL -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Ethumb
On Mon, Nov 7, 2011 at 4:05 PM, Gustavo Sverzut Barbieri barbi...@profusion.mobi wrote: Post 1.1 but before elm? Actually I'm more worried with elm. It will be the biggest user and want a release that works wit it I want to push eio, ethumb and emotion to be released together with elementary. After all they are actual dependencies (optional) for elementary. The todo is very minimal for each of them, eio need some more backend for the monitor API, ethumb need the API change, we already discussed and emotion, well I have nothing that prevent a release of it right now. So I am pretty confident that we could push all this 4 libraries together at the same time. On Monday, November 7, 2011, Cedric BAIL cedric.b...@free.fr wrote: On Mon, Nov 7, 2011 at 3:50 PM, Gustavo Sverzut Barbieri barbi...@profusion.mobi wrote: Cedric, Will you have time to fix ethumb for EFL 1.1 timeframe? If no then i'll remove the async patches and release ethumb as 1.0 using the old API, changing elm as well. It's better to have bit slow API that is correct than the current one, also bindings will be possible. Etc. Clearly not. It's on my todo, but for post 1.1 as it is not a priority since it isn't in the released libraries. I have no problem if you want to rollback, but I may need to break the API/ABI of ethumb later. I want to split computation of the md5 from the call to stat. -- Cedric BAIL -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Cedric BAIL -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib
hmm.. does elm_icon_object_get API good to go? -Regards, Hermet- -Original Message- From: Enlightenment SVNlt;no-re...@enlightenment.orggt; To: enlightenment-...@lists.sourceforge.net Cc: Sent: 11-11-07(월) 00:56:31 Subject: E SVN: discomfitor trunk/elementary/src/lib Log: add function to return image object for use with evas apis Author: discomfitor Date: 2011-11-06 07:56:31 -0800 (Sun, 06 Nov 2011) New Revision: 64830 Trac: http://trac.enlightenment.org/e/changeset/64830 Modified: trunk/elementary/src/lib/Elementary.h.in trunk/elementary/src/lib/elm_icon.c Modified: trunk/elementary/src/lib/Elementary.h.in === --- trunk/elementary/src/lib/Elementary.h.in 2011-11-06 15:43:48 UTC (rev 64829) +++ trunk/elementary/src/lib/Elementary.h.in 2011-11-06 15:56:31 UTC (rev 64830) @@ -5053,6 +5053,15 @@ */ EAPI int elm_icon_prescale_get(const Evas_Object *obj) EINA_ARG_NONNULL(1); /** + * Gets the image object of the icon. DO NOT MODIFY THIS. + * + * @param obj The icon object + * @return The internal icon object + * + * @ingroup Icon + */ + EAPI Evas_Object *elm_icon_object_get(Evas_Object *obj) EINA_ARG_NONNULL(1); + /** * Sets the icon lookup order used by elm_icon_standard_set(). * * @param obj The icon object Modified: trunk/elementary/src/lib/elm_icon.c === --- trunk/elementary/src/lib/elm_icon.c 2011-11-06 15:43:48 UTC (rev 64829) +++ trunk/elementary/src/lib/elm_icon.c 2011-11-06 15:56:31 UTC (rev 64830) @@ -1014,3 +1014,13 @@ if (!wd) return 0; return _els_smart_icon_scale_size_get(wd-img); } + +EAPI Evas_Object * +elm_icon_object_get(Evas_Object *obj) +{ + ELM_CHECK_WIDTYPE(obj, widtype) 0; + Widget_Data *wd = elm_widget_data_get(obj); + + if (!wd) return NULL; + return wd-img; +} -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-svn mailing list enlightenment-...@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-svn -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: raster IN trunk/elementary: . src/bin src/lib
2011/11/6 Enlightenment SVN no-re...@enlightenment.org: Log: From: Bluezery ohpo...@gmail.com Subject: [E-devel] [elm_map] ecore_file_download_full() should be used properly elm_map only checked that returned job is NULL. But ecore_file_download_full() returns EINA_FALSE when error occurred. So return value should be checked for proper usage. Please review this simple bug fix Author: raster Date: 2011-11-05 23:11:57 -0700 (Sat, 05 Nov 2011) New Revision: 64794 Trac: http://trac.enlightenment.org/e/changeset/64794 Modified: trunk/elementary/AUTHORS trunk/elementary/src/bin/test_map.c trunk/elementary/src/lib/elm_genlist.c trunk/elementary/src/lib/elm_map.c Modified: trunk/elementary/AUTHORS === --- trunk/elementary/AUTHORS 2011-11-06 04:44:13 UTC (rev 64793) +++ trunk/elementary/AUTHORS 2011-11-06 06:11:57 UTC (rev 64794) @@ -49,3 +49,4 @@ Bluezery ohpo...@gmail.com Nicolas Aguirre aguirre.nico...@gmail.com Sanjeev BA iamsanj...@gmail.com +Bluezery ohpo...@gmail.com Modified: trunk/elementary/src/bin/test_map.c === --- trunk/elementary/src/bin/test_map.c 2011-11-06 04:44:13 UTC (rev 64793) +++ trunk/elementary/src/bin/test_map.c 2011-11-06 06:11:57 UTC (rev 64794) @@ -711,7 +711,7 @@ void test_map(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__) { - Evas_Object *win, *bg, *map; + Evas_Object *win, *bg, *map, *tab, *r, *en; int idx = 0; win = elm_win_add(NULL, map, ELM_WIN_BASIC); @@ -723,6 +723,19 @@ elm_win_resize_object_add(win, bg); evas_object_show(bg); + tab = elm_table_add(win); + evas_object_size_hint_weight_set(tab, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); + elm_win_resize_object_add(win, tab); + evas_object_show(tab); + + r = evas_object_rectangle_add(evas_object_evas_get(win)); + evas_object_color_set(r, 20, 40, 60, 255); + evas_object_size_hint_min_set(r, 200, 200); + evas_object_size_hint_weight_set(r, EVAS_HINT_EXPAND, 0); + evas_object_size_hint_fill_set(r, EVAS_HINT_FILL, EVAS_HINT_FILL); + elm_table_pack(tab, r, 0, 0, 1, 1); + evas_object_show(r); + map = elm_map_add(win); if (map) { @@ -736,7 +749,9 @@ printf(]\n); evas_object_size_hint_weight_set(map, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - elm_win_resize_object_add(win, map); + evas_object_size_hint_fill_set(map, EVAS_HINT_FILL, EVAS_HINT_FILL); + elm_table_pack(tab, map, 0, 2, 1, 1); +// elm_win_resize_object_add(win, map); evas_object_data_set(map, window, win); // @@ -827,6 +842,14 @@ evas_object_show(map); } + en = elm_entry_add(win); + elm_entry_scrollable_set(en, EINA_TRUE); + elm_entry_single_line_set(en, 1); + evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, 0.0); + evas_object_size_hint_align_set(en, EVAS_HINT_FILL, 0.1); + elm_table_pack(tab, en, 0, 1, 1, 1); + evas_object_show(en); + evas_object_resize(win, 800, 800); evas_object_show(win); Modified: trunk/elementary/src/lib/elm_genlist.c === --- trunk/elementary/src/lib/elm_genlist.c 2011-11-06 04:44:13 UTC (rev 64793) +++ trunk/elementary/src/lib/elm_genlist.c 2011-11-06 06:11:57 UTC (rev 64794) @@ -3263,7 +3263,12 @@ it = wd-queue-data; wd-queue = eina_list_remove_list(wd-queue, wd-queue); it-item-queued = EINA_FALSE; - _item_block_add(wd, it); + if (!wd-blocks) + { + _item_block_add(wd, it); + _item_block_realize(it-item-block); + } + else _item_block_add(wd, it); t = ecore_time_get(); if (it-item-block-changed) { What's this doing here and why do I have the feeling you had rejected something similar before? Modified: trunk/elementary/src/lib/elm_map.c === --- trunk/elementary/src/lib/elm_map.c 2011-11-06 04:44:13 UTC (rev 64793) +++ trunk/elementary/src/lib/elm_map.c 2011-11-06 06:11:57 UTC (rev 64794) @@ -1284,9 +1284,9 @@ if (gi-wd-download_num = MAX_CONCURRENT_DOWNLOAD) break; - ecore_file_download_full(gi-source, gi-file, _tile_downloaded, NULL, gi, (gi-job), wd-ua); - if (!gi-job) - DBG(Can't start to download %s to %s, gi-source, gi-file); + Eina_Bool ret = ecore_file_download_full(gi-source, gi-file, _tile_downloaded, NULL, gi, (gi-job), wd-ua); + if (!ret || !gi-job) + WRN(Can't start to download %s to %s, gi-source, gi-file); else { gi-wd-download_num++; -- RSA(R)
Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib
Actually, we never do that! We never expose internal objects for outside manipulation, even if it's just for querying purposes. I don't know if that decision is good or not, but it's a fact. If this rule is broken, it should be discussed as I'd like to do the same in elm_entry. -- Tom. -Original Message- From: Enlightenment SVNlt;no-re...@enlightenment.orggt; To: enlightenment-...@lists.sourceforge.net Cc: Sent: 11-11-07(월) 00:56:31 Subject: E SVN: discomfitor trunk/elementary/src/lib Log: add function to return image object for use with evas apis Author: discomfitor Date: 2011-11-06 07:56:31 -0800 (Sun, 06 Nov 2011) New Revision: 64830 Trac: http://trac.enlightenment.org/e/changeset/64830 Modified: trunk/elementary/src/lib/Elementary.h.in trunk/elementary/src/lib/elm_icon.c Modified: trunk/elementary/src/lib/Elementary.h.in === --- trunk/elementary/src/lib/Elementary.h.in 2011-11-06 15:43:48 UTC (rev 64829) +++ trunk/elementary/src/lib/Elementary.h.in 2011-11-06 15:56:31 UTC (rev 64830) @@ -5053,6 +5053,15 @@ */ EAPI int elm_icon_prescale_get(const Evas_Object *obj) EINA_ARG_NONNULL(1); /** + * Gets the image object of the icon. DO NOT MODIFY THIS. + * + * @param obj The icon object + * @return The internal icon object + * + * @ingroup Icon + */ + EAPI Evas_Object *elm_icon_object_get(Evas_Object *obj) EINA_ARG_NONNULL(1); + /** * Sets the icon lookup order used by elm_icon_standard_set(). * * @param obj The icon object Modified: trunk/elementary/src/lib/elm_icon.c === --- trunk/elementary/src/lib/elm_icon.c 2011-11-06 15:43:48 UTC (rev 64829) +++ trunk/elementary/src/lib/elm_icon.c 2011-11-06 15:56:31 UTC (rev 64830) @@ -1014,3 +1014,13 @@ if (!wd) return 0; return _els_smart_icon_scale_size_get(wd-img); } + +EAPI Evas_Object * +elm_icon_object_get(Evas_Object *obj) +{ + ELM_CHECK_WIDTYPE(obj, widtype) 0; + Widget_Data *wd = elm_widget_data_get(obj); + + if (!wd) return NULL; + return wd-img; +} -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib
On Mon, 07 Nov 2011 17:35:47 +0200 Tom Hacohen tom.haco...@partner.samsung.com wrote: Actually, we never do that! We never expose internal objects for outside manipulation, even if it's just for querying purposes. I don't know if that decision is good or not, but it's a fact. If this rule is broken, it should be discussed as I'd like to do the same in elm_entry. -- Tom. -Original Message- From: Enlightenment SVNlt;no-re...@enlightenment.orggt; To: enlightenment-...@lists.sourceforge.net Cc: Sent: 11-11-07(월) 00:56:31 Subject: E SVN: discomfitor trunk/elementary/src/lib Log: add function to return image object for use with evas apis Author: discomfitor Date: 2011-11-06 07:56:31 -0800 (Sun, 06 Nov 2011) New Revision: 64830 Trac: http://trac.enlightenment.org/e/changeset/64830 Modified: trunk/elementary/src/lib/Elementary.h.in trunk/elementary/src/lib/elm_icon.c Modified: trunk/elementary/src/lib/Elementary.h.in === --- trunk/elementary/src/lib/Elementary.h.in 2011-11-06 15:43:48 UTC (rev 64829) +++ trunk/elementary/src/lib/Elementary.h.in 2011-11-06 15:56:31 UTC (rev 64830) @@ -5053,6 +5053,15 @@ */ EAPI int elm_icon_prescale_get(const Evas_Object *obj) EINA_ARG_NONNULL(1); /** + * Gets the image object of the icon. DO NOT MODIFY THIS. + * + * @param obj The icon object + * @return The internal icon object + * + * @ingroup Icon + */ + EAPI Evas_Object *elm_icon_object_get(Evas_Object *obj) EINA_ARG_NONNULL(1); + /** * Sets the icon lookup order used by elm_icon_standard_set(). * * @param obj The icon object Modified: trunk/elementary/src/lib/elm_icon.c === --- trunk/elementary/src/lib/elm_icon.c 2011-11-06 15:43:48 UTC (rev 64829) +++ trunk/elementary/src/lib/elm_icon.c 2011-11-06 15:56:31 UTC (rev 64830) @@ -1014,3 +1014,13 @@ if (!wd) return 0; return _els_smart_icon_scale_size_get(wd-img); } + +EAPI Evas_Object * +elm_icon_object_get(Evas_Object *obj) +{ + ELM_CHECK_WIDTYPE(obj, widtype) 0; + Widget_Data *wd = elm_widget_data_get(obj); + + if (!wd) return NULL; + return wd-img; +} Actually, most widgets have an object_get function now. You need it in order to get geometry and whatnot. -- Mike Blumenkrantz Zentific: Doctor recommended, mother approved. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: raster trunk/edje/src/modules/alsa_snd_player
On Mon, 7 Nov 2011 12:38:37 -0200 Gustavo Sverzut Barbieri barbi...@profusion.mobi said: i didn't write it. it came that way. eina_log is also much less convenient as i have to set up a log domain id, create it, delete it, have all the init/shutdown infra then and then finally use longer function calls (or add more macros). it isn't conducive to being used. i understand your point - but the code came this way and i don't have a religious take on this so much that i will instantly refactor code to use eina log when i have other issues to chase down - like mixing issues that i was creating a simplified test case for today as well as cleaning the code up a bit. Sorry, I know this is nitpicking but why don't you use it from start? It's easier than printf() On Monday, November 7, 2011, Carsten Haitzler ras...@rasterman.com wrote: On Mon, 7 Nov 2011 09:37:09 -0200 Gustavo Sverzut Barbieri barbi...@profusion.mobi said: bigger fish to fry atm. Please convert to proper eina log. I'd use one domain per backend, they are separated modules. On Monday, November 7, 2011, Enlightenment SVN no-re...@enlightenment.org wrote: Log: and some more cleaning/formatting in alsa code Author: raster Date: 2011-11-06 21:57:46 -0800 (Sun, 06 Nov 2011) New Revision: 64855 Trac: http://trac.enlightenment.org/e/changeset/64855 Modified: trunk/edje/src/modules/alsa_snd_player/alsa_snd_player.c Modified: trunk/edje/src/modules/alsa_snd_player/alsa_snd_player.c === --- trunk/edje/src/modules/alsa_snd_player/alsa_snd_player.c 2011-11-07 05:45:00 UTC (rev 64854) +++ trunk/edje/src/modules/alsa_snd_player/alsa_snd_player.c 2011-11-07 05:57:46 UTC (rev 64855) @@ -43,72 +43,69 @@ if ((err = snd_pcm_open(alsa_dev, device, SND_PCM_STREAM_PLAYBACK, 0)) 0) { +printf(cannot open alsa playback stream (%s)\n, snd_strerror(err)); goto catch_error; } - if ((err = snd_pcm_hw_params_malloc(hw_params)) 0) { +printf(cannot alloc snd hw params (%s)\n, snd_strerror(err)); goto catch_error; } - if ((err = snd_pcm_hw_params_any(alsa_dev, hw_params)) 0) { -printf(cannot initialize hardware parameter structure (%s)\n, snd_strerror(err)); +printf(cannot initialize snd hw params (%s)\n, snd_strerror(err)); goto catch_error; } - - if ((err = snd_pcm_hw_params_set_access(alsa_dev, hw_params, SND_PCM_ACCESS_RW_INTERLEAVED)) 0) + if ((err = snd_pcm_hw_params_set_access(alsa_dev, hw_params, + SND_PCM_ACCESS_RW_INTERLEAVED)) 0) { printf(cannot set access type (%s)\n, snd_strerror(err)); goto catch_error; } - - if ((err = snd_pcm_hw_params_set_format(alsa_dev, hw_params, SND_PCM_FORMAT_FLOAT)) 0) + if ((err = snd_pcm_hw_params_set_format(alsa_dev, hw_params, + SND_PCM_FORMAT_FLOAT)) 0) { // FIXME: handle if float format not possible printf(cannot set sample format (%s)\n, snd_strerror(err)); goto catch_error; } - - if ((err = snd_pcm_hw_params_set_rate_near(alsa_dev, hw_params, samplerate, 0)) 0) + if ((err = snd_pcm_hw_params_set_rate_near(alsa_dev, hw_params, + samplerate, 0)) 0) { // FIXME: get actual sample rate and tell remix printf(cannot set sample rate (%s)\n, snd_strerror(err)); goto catch_error; } - if ((err = snd_pcm_hw_params_set_channels(alsa_dev, hw_params, channels)) 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 -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: raster IN trunk/elementary: . src/bin src/lib
On Mon, 7 Nov 2011 13:28:45 -0200 Iván Briano (Sachiel) sachi...@gmail.com wrote: 2011/11/6 Enlightenment SVN no-re...@enlightenment.org: Log: From: Bluezery ohpo...@gmail.com Subject: [E-devel] [elm_map] ecore_file_download_full() should be used properly elm_map only checked that returned job is NULL. But ecore_file_download_full() returns EINA_FALSE when error occurred. So return value should be checked for proper usage. Please review this simple bug fix Author: raster Date: 2011-11-05 23:11:57 -0700 (Sat, 05 Nov 2011) New Revision: 64794 Trac: http://trac.enlightenment.org/e/changeset/64794 Modified: trunk/elementary/AUTHORS trunk/elementary/src/bin/test_map.c trunk/elementary/src/lib/elm_genlist.c trunk/elementary/src/lib/elm_map.c Modified: trunk/elementary/AUTHORS === --- trunk/elementary/AUTHORS 2011-11-06 04:44:13 UTC (rev 64793) +++ trunk/elementary/AUTHORS 2011-11-06 06:11:57 UTC (rev 64794) @@ -49,3 +49,4 @@ Bluezery ohpo...@gmail.com Nicolas Aguirre aguirre.nico...@gmail.com Sanjeev BA iamsanj...@gmail.com +Bluezery ohpo...@gmail.com Modified: trunk/elementary/src/bin/test_map.c === --- trunk/elementary/src/bin/test_map.c 2011-11-06 04:44:13 UTC (rev 64793) +++ trunk/elementary/src/bin/test_map.c 2011-11-06 06:11:57 UTC (rev 64794) @@ -711,7 +711,7 @@ void test_map(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__) { - Evas_Object *win, *bg, *map; + Evas_Object *win, *bg, *map, *tab, *r, *en; int idx = 0; win = elm_win_add(NULL, map, ELM_WIN_BASIC); @@ -723,6 +723,19 @@ elm_win_resize_object_add(win, bg); evas_object_show(bg); + tab = elm_table_add(win); + evas_object_size_hint_weight_set(tab, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); + elm_win_resize_object_add(win, tab); + evas_object_show(tab); + + r = evas_object_rectangle_add(evas_object_evas_get(win)); + evas_object_color_set(r, 20, 40, 60, 255); + evas_object_size_hint_min_set(r, 200, 200); + evas_object_size_hint_weight_set(r, EVAS_HINT_EXPAND, 0); + evas_object_size_hint_fill_set(r, EVAS_HINT_FILL, EVAS_HINT_FILL); + elm_table_pack(tab, r, 0, 0, 1, 1); + evas_object_show(r); + map = elm_map_add(win); if (map) { @@ -736,7 +749,9 @@ printf(]\n); evas_object_size_hint_weight_set(map, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - elm_win_resize_object_add(win, map); + evas_object_size_hint_fill_set(map, EVAS_HINT_FILL, EVAS_HINT_FILL); + elm_table_pack(tab, map, 0, 2, 1, 1); +// elm_win_resize_object_add(win, map); evas_object_data_set(map, window, win); // @@ -827,6 +842,14 @@ evas_object_show(map); } + en = elm_entry_add(win); + elm_entry_scrollable_set(en, EINA_TRUE); + elm_entry_single_line_set(en, 1); + evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, 0.0); + evas_object_size_hint_align_set(en, EVAS_HINT_FILL, 0.1); + elm_table_pack(tab, en, 0, 1, 1, 1); + evas_object_show(en); + evas_object_resize(win, 800, 800); evas_object_show(win); Modified: trunk/elementary/src/lib/elm_genlist.c === --- trunk/elementary/src/lib/elm_genlist.c 2011-11-06 04:44:13 UTC (rev 64793) +++ trunk/elementary/src/lib/elm_genlist.c 2011-11-06 06:11:57 UTC (rev 64794) @@ -3263,7 +3263,12 @@ it = wd-queue-data; wd-queue = eina_list_remove_list(wd-queue, wd-queue); it-item-queued = EINA_FALSE; - _item_block_add(wd, it); + if (!wd-blocks) + { + _item_block_add(wd, it); + _item_block_realize(it-item-block); + } + else _item_block_add(wd, it); t = ecore_time_get(); if (it-item-block-changed) { What's this doing here and why do I have the feeling you had rejected something similar before? GASP! UNRELATED CODE IN A COMMIT! Modified: trunk/elementary/src/lib/elm_map.c === --- trunk/elementary/src/lib/elm_map.c 2011-11-06 04:44:13 UTC (rev 64793) +++ trunk/elementary/src/lib/elm_map.c 2011-11-06 06:11:57 UTC (rev 64794) @@ -1284,9 +1284,9 @@ if (gi-wd-download_num = MAX_CONCURRENT_DOWNLOAD) break; - ecore_file_download_full(gi-source, gi-file, _tile_downloaded, NULL, gi, (gi-job), wd-ua); - if (!gi-job) - DBG(Can't start to download %s to %s, gi-source, gi-file); + Eina_Bool ret = ecore_file_download_full(gi-source, gi-file, _tile_downloaded, NULL, gi, (gi-job), wd-ua); + if
Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib
Shouldnt be needed or done. Geometry is not a good reason. On Monday, November 7, 2011, Mike Blumenkrantz m...@zentific.com wrote: On Mon, 07 Nov 2011 17:35:47 +0200 Tom Hacohen tom.haco...@partner.samsung.com wrote: Actually, we never do that! We never expose internal objects for outside manipulation, even if it's just for querying purposes. I don't know if that decision is good or not, but it's a fact. If this rule is broken, it should be discussed as I'd like to do the same in elm_entry. -- Tom. -Original Message- From: Enlightenment SVNlt;no-re...@enlightenment.orggt; To: enlightenment-...@lists.sourceforge.net Cc: Sent: 11-11-07(월) 00:56:31 Subject: E SVN: discomfitor trunk/elementary/src/lib Log: add function to return image object for use with evas apis Author: discomfitor Date: 2011-11-06 07:56:31 -0800 (Sun, 06 Nov 2011) New Revision: 64830 Trac: http://trac.enlightenment.org/e/changeset/64830 Modified: trunk/elementary/src/lib/Elementary.h.intrunk/elementary/src/lib/elm_icon.c Modified: trunk/elementary/src/lib/Elementary.h.in === --- trunk/elementary/src/lib/Elementary.h.in 2011-11-06 15:43:48 UTC (rev 64829) +++ trunk/elementary/src/lib/Elementary.h.in 2011-11-06 15:56:31 UTC (rev 64830) @@ -5053,6 +5053,15 @@ */ EAPI int elm_icon_prescale_get(const Evas_Object *obj) EINA_ARG_NONNULL(1); /** + * Gets the image object of the icon. DO NOT MODIFY THIS. + * + * @param obj The icon object + * @return The internal icon object + * + * @ingroup Icon + */ + EAPI Evas_Object *elm_icon_object_get(Evas_Object *obj) EINA_ARG_NONNULL(1); + /** * Sets the icon lookup order used by elm_icon_standard_set(). * * @param obj The icon object Modified: trunk/elementary/src/lib/elm_icon.c === --- trunk/elementary/src/lib/elm_icon.c 2011-11-06 15:43:48 UTC (rev 64829) +++ trunk/elementary/src/lib/elm_icon.c 2011-11-06 15:56:31 UTC (rev 64830) @@ -1014,3 +1014,13 @@ if (!wd) return 0; return _els_smart_icon_scale_size_get(wd-img); } + +EAPI Evas_Object * +elm_icon_object_get(Evas_Object *obj) +{ + ELM_CHECK_WIDTYPE(obj, widtype) 0; + Widget_Data *wd = elm_widget_data_get(obj); + + if (!wd) return NULL; + return wd-img; +} Actually, most widgets have an object_get function now. You need it in order to get geometry and whatnot. -- Mike Blumenkrantz Zentific: Doctor recommended, mother approved. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib
On Mon, 7 Nov 2011 14:36:50 -0200 Gustavo Sverzut Barbieri barbi...@profusion.mobi wrote: Shouldnt be needed or done. Geometry is not a good reason. Sure, but it was the first example that came to mind. A better one would be creating a dbus notification event from an image. You need the row stride and image data pointer, which obviously can't be gotten from the opaque pointer. On Monday, November 7, 2011, Mike Blumenkrantz m...@zentific.com wrote: On Mon, 07 Nov 2011 17:35:47 +0200 Tom Hacohen tom.haco...@partner.samsung.com wrote: Actually, we never do that! We never expose internal objects for outside manipulation, even if it's just for querying purposes. I don't know if that decision is good or not, but it's a fact. If this rule is broken, it should be discussed as I'd like to do the same in elm_entry. -- Tom. -Original Message- From: Enlightenment SVNlt;no-re...@enlightenment.orggt; To: enlightenment-...@lists.sourceforge.net Cc: Sent: 11-11-07(월) 00:56:31 Subject: E SVN: discomfitor trunk/elementary/src/lib Log: add function to return image object for use with evas apis Author: discomfitor Date: 2011-11-06 07:56:31 -0800 (Sun, 06 Nov 2011) New Revision: 64830 Trac: http://trac.enlightenment.org/e/changeset/64830 Modified: trunk/elementary/src/lib/Elementary.h.intrunk/elementary/src/lib/elm_icon.c Modified: trunk/elementary/src/lib/Elementary.h.in === --- trunk/elementary/src/lib/Elementary.h.in 2011-11-06 15:43:48 UTC (rev 64829) +++ trunk/elementary/src/lib/Elementary.h.in 2011-11-06 15:56:31 UTC (rev 64830) @@ -5053,6 +5053,15 @@ */ EAPI int elm_icon_prescale_get(const Evas_Object *obj) EINA_ARG_NONNULL(1); /** + * Gets the image object of the icon. DO NOT MODIFY THIS. + * + * @param obj The icon object + * @return The internal icon object + * + * @ingroup Icon + */ + EAPI Evas_Object *elm_icon_object_get(Evas_Object *obj) EINA_ARG_NONNULL(1); + /** * Sets the icon lookup order used by elm_icon_standard_set(). * * @param obj The icon object Modified: trunk/elementary/src/lib/elm_icon.c === --- trunk/elementary/src/lib/elm_icon.c 2011-11-06 15:43:48 UTC (rev 64829) +++ trunk/elementary/src/lib/elm_icon.c 2011-11-06 15:56:31 UTC (rev 64830) @@ -1014,3 +1014,13 @@ if (!wd) return 0; return _els_smart_icon_scale_size_get(wd-img); } + +EAPI Evas_Object * +elm_icon_object_get(Evas_Object *obj) +{ + ELM_CHECK_WIDTYPE(obj, widtype) 0; + Widget_Data *wd = elm_widget_data_get(obj); + + if (!wd) return NULL; + return wd-img; +} Actually, most widgets have an object_get function now. You need it in order to get geometry and whatnot. -- Mike Blumenkrantz Zentific: Doctor recommended, mother approved. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Mike Blumenkrantz Zentific: Doctor recommended, mother approved. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Improving Elementary for the release
In my opinion, Elementary.h should be split into smaller files that it includes, kind of like what Eina.h does. If structures are made public, they should have a 'void *padding[MAX_PADDING];' added to the end, makes it easier to not break the ABI when adding new stuff. Other than that, I don't know elm enough to comment on anything else. On Mon, Nov 7, 2011 at 8:12 AM, Cedric BAIL cedric.b...@free.fr wrote: Hi all, We are going to try releasing Elementary soon after the release of the EFL 1.1. I would like to start a discussion now on what should be done to prepare Elementary for a release. I have been doing a quick overview of Elementary.h. The first problem is that we have a lot of structure in it that should be allocated by the application and they don't have any information about version or size, so we will not be able to touch them after the release anymore. That's bad, I think we need to fix that by adding function that will do the allocation and zero the memory before giving the pointer to the app. The second point is about both gengrid and genlist. I would like to add a few new callback : - content_set/content_unset: when set, content_get will return an object, but it will be reused and it's real content will be set and unset later. This permit the implementation of some cache mechanisme directly inside elm_gen. - label_free: if set, it will be able to override the call to free. This could help, I have found many times that I am using stringshare or static string that really don't need to be strdup. Btw I don't like the name of that callback This second list of change should not break API/ABI once the first change are done. So not a big hurry, but they are simple to do and should help provide better performance. Of course I don't plan to play with this until the EFL 1.1 are out, so you have time for comment. I put here only the thing I want to do and how I plan to fix them. If you have some idea of what need to be fixed in Elementary before the release and how you want to do it, maybe answering to this thread will be a good idea. Have fun, -- Cedric BAIL -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Improving Elementary for the release
I'm strongly against padfings. Just have versioning and check it On Monday, November 7, 2011, Youness Alaoui kakar...@kakaroto.homelinux.net wrote: In my opinion, Elementary.h should be split into smaller files that it includes, kind of like what Eina.h does. If structures are made public, they should have a 'void *padding[MAX_PADDING];' added to the end, makes it easier to not break the ABI when adding new stuff. Other than that, I don't know elm enough to comment on anything else. On Mon, Nov 7, 2011 at 8:12 AM, Cedric BAIL cedric.b...@free.fr wrote: Hi all, We are going to try releasing Elementary soon after the release of the EFL 1.1. I would like to start a discussion now on what should be done to prepare Elementary for a release. I have been doing a quick overview of Elementary.h. The first problem is that we have a lot of structure in it that should be allocated by the application and they don't have any information about version or size, so we will not be able to touch them after the release anymore. That's bad, I think we need to fix that by adding function that will do the allocation and zero the memory before giving the pointer to the app. The second point is about both gengrid and genlist. I would like to add a few new callback : - content_set/content_unset: when set, content_get will return an object, but it will be reused and it's real content will be set and unset later. This permit the implementation of some cache mechanisme directly inside elm_gen. - label_free: if set, it will be able to override the call to free. This could help, I have found many times that I am using stringshare or static string that really don't need to be strdup. Btw I don't like the name of that callback This second list of change should not break API/ABI once the first change are done. So not a big hurry, but they are simple to do and should help provide better performance. Of course I don't plan to play with this until the EFL 1.1 are out, so you have time for comment. I put here only the thing I want to do and how I plan to fix them. If you have some idea of what need to be fixed in Elementary before the release and how you want to do it, maybe answering to this thread will be a good idea. Have fun, -- Cedric BAIL -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib
On 07/11/11 18:41, Mike Blumenkrantz wrote: On Mon, 7 Nov 2011 14:36:50 -0200 Gustavo Sverzut Barbieri barbi...@profusion.mobi wrote: Shouldnt be needed or done. Geometry is not a good reason. Sure, but it was the first example that came to mind. A better one would be creating a dbus notification event from an image. You need the row stride and image data pointer, which obviously can't be gotten from the opaque pointer. But you can create a new function that just wraps around the inside function, that's what's done in all of elementary atm. I don't mind doing this, just saying, it's against the rules we all set, and I want to know, if it's allowed, I wanna do it as well. I was avoiding it until now because I'm a law abiding citizen of the e community. ;P -- Tom. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] edje_convert still in repo.
On Sun, 6 Nov 2011 11:32:33 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Sat, 5 Nov 2011 22:17:45 +0100 (CET) Vincent Torri vto...@univ-evry.fr said: Hey edje_convert has been removed from the build for a long time, now. Why keeping it in trunk ? i have no objection. :) If there is no strong objection, I'll remove edje_convert code and the 2 _edje_edd_init() and _edje_edd_shutdown() functions too. well the init/shutdown don't get removed.. just no longer EAPI'd. :) Vincent IMO edje_convert should just be moved to a separate dir in svn. It is still useful when you come across old edj files, and so it may be of use to people at times. -- Mike Blumenkrantz Zentific: Doctor recommended, mother approved. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib
On Mon, 07 Nov 2011 22:23:53 +0200 Tom Hacohen t...@stosb.com wrote: On 07/11/11 18:41, Mike Blumenkrantz wrote: On Mon, 7 Nov 2011 14:36:50 -0200 Gustavo Sverzut Barbieri barbi...@profusion.mobi wrote: Shouldnt be needed or done. Geometry is not a good reason. Sure, but it was the first example that came to mind. A better one would be creating a dbus notification event from an image. You need the row stride and image data pointer, which obviously can't be gotten from the opaque pointer. But you can create a new function that just wraps around the inside function, that's what's done in all of elementary atm. I don't mind doing this, just saying, it's against the rules we all set, and I want to know, if it's allowed, I wanna do it as well. I was avoiding it until now because I'm a law abiding citizen of the e community. ;P -- Tom. So you're saying now that I should add specific elm functions to wrap other libraries just to avoid exposing stuff? I knew the elm api was shitty, but I didn't expect that it would go that far... -- Mike Blumenkrantz Zentific: Doctor recommended, mother approved. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib
On 07/11/11 22:33, Mike Blumenkrantz wrote: So you're saying now that I should add specific elm functions to wrap other libraries just to avoid exposing stuff? I knew the elm api was shitty, but I didn't expect that it would go that far... Don't shoot the messenger, but yes, that's what's done in elementary atm. It wasn't me who decided that. -- Tom. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Improving Elementary for the release
Could you explain what you mean by versioning or give me a link to something that explains it ? padding is useful so you can change your structure (and add new APIs) without breaking the ABI and forcing every app to recompile (changed sizeof). On Mon, Nov 7, 2011 at 2:35 PM, Gustavo Sverzut Barbieri barbi...@profusion.mobi wrote: I'm strongly against padfings. Just have versioning and check it On Monday, November 7, 2011, Youness Alaoui kakar...@kakaroto.homelinux.net wrote: In my opinion, Elementary.h should be split into smaller files that it includes, kind of like what Eina.h does. If structures are made public, they should have a 'void *padding[MAX_PADDING];' added to the end, makes it easier to not break the ABI when adding new stuff. Other than that, I don't know elm enough to comment on anything else. On Mon, Nov 7, 2011 at 8:12 AM, Cedric BAIL cedric.b...@free.fr wrote: Hi all, We are going to try releasing Elementary soon after the release of the EFL 1.1. I would like to start a discussion now on what should be done to prepare Elementary for a release. I have been doing a quick overview of Elementary.h. The first problem is that we have a lot of structure in it that should be allocated by the application and they don't have any information about version or size, so we will not be able to touch them after the release anymore. That's bad, I think we need to fix that by adding function that will do the allocation and zero the memory before giving the pointer to the app. The second point is about both gengrid and genlist. I would like to add a few new callback : - content_set/content_unset: when set, content_get will return an object, but it will be reused and it's real content will be set and unset later. This permit the implementation of some cache mechanisme directly inside elm_gen. - label_free: if set, it will be able to override the call to free. This could help, I have found many times that I am using stringshare or static string that really don't need to be strdup. Btw I don't like the name of that callback This second list of change should not break API/ABI once the first change are done. So not a big hurry, but they are simple to do and should help provide better performance. Of course I don't plan to play with this until the EFL 1.1 are out, so you have time for comment. I put here only the thing I want to do and how I plan to fix them. If you have some idea of what need to be fixed in Elementary before the release and how you want to do it, maybe answering to this thread will be a good idea. Have fun, -- Cedric BAIL -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Improving Elementary for the release
On Mon, Nov 7, 2011 at 22:37, Youness Alaoui kakar...@kakaroto.homelinux.net wrote: Could you explain what you mean by versioning or give me a link to something that explains it ? padding is useful so you can change your structure (and add new APIs) without breaking the ABI and forcing every app to recompile (changed sizeof). You should only need a spare (void *). -- Boris Faure -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Improving Elementary for the release
On Mon, 7 Nov 2011 16:37:39 -0500 Youness Alaoui kakar...@kakaroto.homelinux.net wrote: Could you explain what you mean by versioning or give me a link to something that explains it ? padding is useful so you can change your structure (and add new APIs) without breaking the ABI and forcing every app to recompile (changed sizeof). See Ecore.h, Ecore_Version. On Mon, Nov 7, 2011 at 2:35 PM, Gustavo Sverzut Barbieri barbi...@profusion.mobi wrote: I'm strongly against padfings. Just have versioning and check it On Monday, November 7, 2011, Youness Alaoui kakar...@kakaroto.homelinux.net wrote: In my opinion, Elementary.h should be split into smaller files that it includes, kind of like what Eina.h does. If structures are made public, they should have a 'void *padding[MAX_PADDING];' added to the end, makes it easier to not break the ABI when adding new stuff. Other than that, I don't know elm enough to comment on anything else. On Mon, Nov 7, 2011 at 8:12 AM, Cedric BAIL cedric.b...@free.fr wrote: Hi all, We are going to try releasing Elementary soon after the release of the EFL 1.1. I would like to start a discussion now on what should be done to prepare Elementary for a release. I have been doing a quick overview of Elementary.h. The first problem is that we have a lot of structure in it that should be allocated by the application and they don't have any information about version or size, so we will not be able to touch them after the release anymore. That's bad, I think we need to fix that by adding function that will do the allocation and zero the memory before giving the pointer to the app. The second point is about both gengrid and genlist. I would like to add a few new callback : - content_set/content_unset: when set, content_get will return an object, but it will be reused and it's real content will be set and unset later. This permit the implementation of some cache mechanisme directly inside elm_gen. - label_free: if set, it will be able to override the call to free. This could help, I have found many times that I am using stringshare or static string that really don't need to be strdup. Btw I don't like the name of that callback This second list of change should not break API/ABI once the first change are done. So not a big hurry, but they are simple to do and should help provide better performance. Of course I don't plan to play with this until the EFL 1.1 are out, so you have time for comment. I put here only the thing I want to do and how I plan to fix them. If you have some idea of what need to be fixed in Elementary before the release and how you want to do it, maybe answering to this thread will be a good idea. Have fun, -- Cedric BAIL -- Mike Blumenkrantz Zentific: Doctor recommended, mother approved. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/e/src/modules/conf_randr
Hey Mike, thank you very much for all your help reviewing/-factoring the code. Am 08.11.2011 um 00:03 schrieb Enlightenment SVN: Log: checks like this only work with initializers! I was told that (maybe depending on compiler/platform) stack variables are always initialized with NULL/0. That's why I sometimes left them out. Author: discomfitor Date: 2011-11-07 15:03:07 -0800 (Mon, 07 Nov 2011) New Revision: 64896 Trac: http://trac.enlightenment.org/e/changeset/64896 Modified: trunk/e/src/modules/conf_randr/e_int_config_randr_policies.c Modified: trunk/e/src/modules/conf_randr/e_int_config_randr_policies.c === --- trunk/e/src/modules/conf_randr/e_int_config_randr_policies.c 2011-11-07 23:02:13 UTC (rev 64895) +++ trunk/e/src/modules/conf_randr/e_int_config_randr_policies.c 2011-11-07 23:03:07 UTC (rev 64896) @@ -208,7 +208,7 @@ e_config_randr_dialog_subdialog_policies_update_radio_buttons(Evas_Object *crtc) { E_Config_Randr_Dialog_Output_Dialog_Data *output_dialog_data; - E_Randr_Output_Info *output; + E_Randr_Output_Info *output = NULL; Ecore_X_Randr_Output_Policy policy; char signal[40]; -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-svn mailing list enlightenment-...@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-svn -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/e/src/modules/conf_randr
2011/11/7 Leif Middelschulte leif.middelschu...@gmail.com: Hey Mike, thank you very much for all your help reviewing/-factoring the code. Am 08.11.2011 um 00:03 schrieb Enlightenment SVN: Log: checks like this only work with initializers! I was told that (maybe depending on compiler/platform) stack variables are always initialized with NULL/0. That's why I sometimes left them out. No. That almost never happens. Static variables, however, do. Author: discomfitor Date: 2011-11-07 15:03:07 -0800 (Mon, 07 Nov 2011) New Revision: 64896 Trac: http://trac.enlightenment.org/e/changeset/64896 Modified: trunk/e/src/modules/conf_randr/e_int_config_randr_policies.c Modified: trunk/e/src/modules/conf_randr/e_int_config_randr_policies.c === --- trunk/e/src/modules/conf_randr/e_int_config_randr_policies.c 2011-11-07 23:02:13 UTC (rev 64895) +++ trunk/e/src/modules/conf_randr/e_int_config_randr_policies.c 2011-11-07 23:03:07 UTC (rev 64896) @@ -208,7 +208,7 @@ e_config_randr_dialog_subdialog_policies_update_radio_buttons(Evas_Object *crtc) { E_Config_Randr_Dialog_Output_Dialog_Data *output_dialog_data; - E_Randr_Output_Info *output; + E_Randr_Output_Info *output = NULL; Ecore_X_Randr_Output_Policy policy; char signal[40]; -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-svn mailing list enlightenment-...@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-svn -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor IN trunk/e/src/modules: illume-bluetooth illume-home illume-home-toggle illume-indicator illume-kbd-toggle illume-keyboard illume-mode-toggle illume2
On 11/07/11 18:30, Enlightenment SVN wrote: Log: OMG! DEVILHORNS USING AN EDITOR WITH TABS INSTEAD OF WHITESPACES? SAY IT AIN'T SO!!! Author: discomfitor Date: 2011-11-07 15:30:27 -0800 (Mon, 07 Nov 2011) New Revision: 64906 Trac: http://trac.enlightenment.org/e/changeset/64906 Modified: trunk/e/src/modules/illume-bluetooth/e_mod_main.c trunk/e/src/modules/illume-home-toggle/e_mod_main.c trunk/e/src/modules/illume-home/e_mod_main.c trunk/e/src/modules/illume-indicator/e_mod_ind_win.c trunk/e/src/modules/illume-kbd-toggle/e_mod_main.c trunk/e/src/modules/illume-keyboard/e_kbd_buf.c trunk/e/src/modules/illume-keyboard/e_kbd_dict.c trunk/e/src/modules/illume-keyboard/e_kbd_int.c trunk/e/src/modules/illume-keyboard/e_mod_config.c trunk/e/src/modules/illume-keyboard/e_mod_main.c trunk/e/src/modules/illume-mode-toggle/e_mod_main.c trunk/e/src/modules/illume2/e_illume.c trunk/e/src/modules/illume2/e_mod_config_animation.c trunk/e/src/modules/illume2/e_mod_kbd.c trunk/e/src/modules/illume2/e_mod_kbd_device.c trunk/e/src/modules/illume2/e_mod_quickpanel.c trunk/e/src/modules/illume2/e_mod_select_window.c Not that I am aware of. Here's a snippet from my editor config: USE_TABS= 0;% Use tabs when generating whitespace. Please tell me you did not use that nasty ecrustify crud to fix these ?? dh -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib
On Mon, 07 Nov 2011 22:44:37 +0200 Tom Hacohen t...@stosb.com said: On 07/11/11 22:33, Mike Blumenkrantz wrote: So you're saying now that I should add specific elm functions to wrap other libraries just to avoid exposing stuff? I knew the elm api was shitty, but I didn't expect that it would go that far... Don't shoot the messenger, but yes, that's what's done in elementary atm. It wasn't me who decided that. the real problem here is edbus's e_notify requiring an evas image object - that's the poor api. the only way to do what you want nicely is: 1. make elm_icon handle notification stuff itself directly (kind of not too nice - but yes - the idea is elm wraps up these kinds of thnigs so the programmer just points elm at what they want it to do and it goes off to do it) or 2. you create the image object outside of elm and SET it as the icon obj for elm_icon telling em_icon to adopt the image obj as its icon and manage it from then on. -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/e/src/modules/conf_randr
On Mon, 7 Nov 2011 23:17:56 + Iván Briano (Sachiel) sachi...@gmail.com said: 2011/11/7 Leif Middelschulte leif.middelschu...@gmail.com: Hey Mike, thank you very much for all your help reviewing/-factoring the code. Am 08.11.2011 um 00:03 schrieb Enlightenment SVN: Log: checks like this only work with initializers! I was told that (maybe depending on compiler/platform) stack variables are always initialized with NULL/0. That's why I sometimes left them out. No. That almost never happens. Static variables, however, do. yup. EVEN then - initialize your statics too. it's good habit. anything on the stack not initialized is random memory garbage that could be anything from a null/0 or something else depending on history of the stack. Author: discomfitor Date: 2011-11-07 15:03:07 -0800 (Mon, 07 Nov 2011) New Revision: 64896 Trac: http://trac.enlightenment.org/e/changeset/64896 Modified: trunk/e/src/modules/conf_randr/e_int_config_randr_policies.c Modified: trunk/e/src/modules/conf_randr/e_int_config_randr_policies.c === --- trunk/e/src/modules/conf_randr/e_int_config_randr_policies.c 2011-11-07 23:02:13 UTC (rev 64895) +++ trunk/e/src/modules/conf_randr/e_int_config_randr_policies.c 2011-11-07 23:03:07 UTC (rev 64896) @@ -208,7 +208,7 @@ e_config_randr_dialog_subdialog_policies_update_radio_buttons(Evas_Object *crtc) { E_Config_Randr_Dialog_Output_Dialog_Data *output_dialog_data; - E_Randr_Output_Info *output; + E_Randr_Output_Info *output = NULL; Ecore_X_Randr_Output_Policy policy; char signal[40]; -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-svn mailing list enlightenment-...@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-svn -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ 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 -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor IN trunk/e/src/modules: illume-bluetooth illume-home illume-home-toggle illume-indicator illume-kbd-toggle illume-keyboard illume-mode-toggle illume2
On Mon, 07 Nov 2011 18:46:44 -0500 Christopher Michael cpmicha...@comcast.net wrote: On 11/07/11 18:30, Enlightenment SVN wrote: Log: OMG! DEVILHORNS USING AN EDITOR WITH TABS INSTEAD OF WHITESPACES? SAY IT AIN'T SO!!! Author: discomfitor Date: 2011-11-07 15:30:27 -0800 (Mon, 07 Nov 2011) New Revision: 64906 Trac: http://trac.enlightenment.org/e/changeset/64906 Modified: trunk/e/src/modules/illume-bluetooth/e_mod_main.c trunk/e/src/modules/illume-home-toggle/e_mod_main.c trunk/e/src/modules/illume-home/e_mod_main.c trunk/e/src/modules/illume-indicator/e_mod_ind_win.c trunk/e/src/modules/illume-kbd-toggle/e_mod_main.c trunk/e/src/modules/illume-keyboard/e_kbd_buf.c trunk/e/src/modules/illume-keyboard/e_kbd_dict.c trunk/e/src/modules/illume-keyboard/e_kbd_int.c trunk/e/src/modules/illume-keyboard/e_mod_config.c trunk/e/src/modules/illume-keyboard/e_mod_main.c trunk/e/src/modules/illume-mode-toggle/e_mod_main.c trunk/e/src/modules/illume2/e_illume.c trunk/e/src/modules/illume2/e_mod_config_animation.c trunk/e/src/modules/illume2/e_mod_kbd.c trunk/e/src/modules/illume2/e_mod_kbd_device.c trunk/e/src/modules/illume2/e_mod_quickpanel.c trunk/e/src/modules/illume2/e_mod_select_window.c Not that I am aware of. Here's a snippet from my editor config: USE_TABS = 0;% Use tabs when generating whitespace. Please tell me you did not use that nasty ecrustify crud to fix these ?? dh No, I used sed. And it was definitely you, since you're the only person who has ever edited these files. -- Mike Blumenkrantz Zentific: Doctor recommended, mother approved. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib
On Tue, 8 Nov 2011 08:48:10 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Mon, 07 Nov 2011 22:44:37 +0200 Tom Hacohen t...@stosb.com said: On 07/11/11 22:33, Mike Blumenkrantz wrote: So you're saying now that I should add specific elm functions to wrap other libraries just to avoid exposing stuff? I knew the elm api was shitty, but I didn't expect that it would go that far... Don't shoot the messenger, but yes, that's what's done in elementary atm. It wasn't me who decided that. the real problem here is edbus's e_notify requiring an evas image object - that's the poor api. the only way to do what you want nicely is: I added this function the other day and made it take an evas object to keep in line with other notify functions which took evas objects. 1. make elm_icon handle notification stuff itself directly (kind of not too nice - but yes - the idea is elm wraps up these kinds of thnigs so the programmer just points elm at what they want it to do and it goes off to do it) or 2. you create the image object outside of elm and SET it as the icon obj for elm_icon telling em_icon to adopt the image obj as its icon and manage it from then on. -- Mike Blumenkrantz Zentific: Doctor recommended, mother approved. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/e/src/bin
On 11/07/11 18:53, Enlightenment SVN wrote: Log: I don't spend hours and hours and hours and days of my free time hacking on ecrustify for people to not use it. Author: discomfitor Date: 2011-11-07 15:53:01 -0800 (Mon, 07 Nov 2011) New Revision: 64917 Trac: http://trac.enlightenment.org/e/changeset/64917 Modified: trunk/e/src/bin/e_randr.c Modified: trunk/e/src/bin/e_randr.c === Then the only solution is to stop wasting your hours hours :P dh -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor IN trunk/e/src/modules: illume-bluetooth illume-home illume-home-toggle illume-indicator illume-kbd-toggle illume-keyboard illume-mode-toggle illume2
On 11/07/11 18:53, Mike Blumenkrantz wrote: On Mon, 07 Nov 2011 18:46:44 -0500 Christopher Michaelcpmicha...@comcast.net wrote: On 11/07/11 18:30, Enlightenment SVN wrote: Log: OMG! DEVILHORNS USING AN EDITOR WITH TABS INSTEAD OF WHITESPACES? SAY IT AIN'T SO!!! Author: discomfitor Date: 2011-11-07 15:30:27 -0800 (Mon, 07 Nov 2011) New Revision: 64906 Trac: http://trac.enlightenment.org/e/changeset/64906 Modified: trunk/e/src/modules/illume-bluetooth/e_mod_main.c trunk/e/src/modules/illume-home-toggle/e_mod_main.c trunk/e/src/modules/illume-home/e_mod_main.c trunk/e/src/modules/illume-indicator/e_mod_ind_win.c trunk/e/src/modules/illume-kbd-toggle/e_mod_main.c trunk/e/src/modules/illume-keyboard/e_kbd_buf.c trunk/e/src/modules/illume-keyboard/e_kbd_dict.c trunk/e/src/modules/illume-keyboard/e_kbd_int.c trunk/e/src/modules/illume-keyboard/e_mod_config.c trunk/e/src/modules/illume-keyboard/e_mod_main.c trunk/e/src/modules/illume-mode-toggle/e_mod_main.c trunk/e/src/modules/illume2/e_illume.c trunk/e/src/modules/illume2/e_mod_config_animation.c trunk/e/src/modules/illume2/e_mod_kbd.c trunk/e/src/modules/illume2/e_mod_kbd_device.c trunk/e/src/modules/illume2/e_mod_quickpanel.c trunk/e/src/modules/illume2/e_mod_select_window.c Not that I am aware of. Here's a snippet from my editor config: USE_TABS = 0;% Use tabs when generating whitespace. Please tell me you did not use that nasty ecrustify crud to fix these ?? dh No, I used sed. And it was definitely you, since you're the only person who has ever edited these files. Huh, strange. Eh, could have been using a different editor @ that timeoh well. dh -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Improving Elementary for the release
Ok, I checked Ecore.h and I see what you mean, but that's only useful if you break the API, the padding is useful for not breaking the API but keeping the .so ABI-compatible. For example, if you only add a function to the API, you add the @since in the docs, and all the software that was linked to your .so will still work because the other functions are the same and their behavior is the same, so it's not an API break, but you incremented the API with a new function that can be used by future apps. If that new function needs a variable in the structure, then you can just replace one of the void * paddings and that's it, it works.. If you don't have padding and you add a new field in the struct, the sizeof(struct whatever) will change, so anything that instanciates your structure will be allocating wrongly sized memory and that can lead to memory corruption (since your old API will be compiled with the new sizeof). Thus breaks the ABI and it forces every app using your library to get recompiled (no code change, it just needs a recompile) for it to work.. this also means that your .so version will need to change, .so.1.1 instead of .so.1.0 for example, it basically amounts to the same as breaking the API even though it's not necessary if you had padding. Of course, any internal structure doesn't need that, so if you allocate a structure using a function call and the user of the lib only sees it as an opaque struct pointer, then you don't need padding, but if the struct itself is defined in the .h and is public, then it would need the padding to avoid breaking the ABI/API for compatible+incremental API changes. @Boris: technically, only one void * could be enough, but that means that if you need 2 new fields, you'd have to create a substructure and set that as your void *padding, and add padding in it too in case you still need to add stuff to your substructure, and it complicates everything.. usually you'd set 10 or 20 padding pointers or something so you can keep adding stuff to the struct in the future. You could also not put any padding, but just have a void *priv; at the end, then put any additional thing in this priv pointer to a private structure, but it will limit you in the sense that you won't be able to add new public fields to the struct, and any additions will have to be private. As an example, this would be impractical in the case of a MouseEvent structure, if you wanted to add a new field to it, then it probably needs to be public, not hidden in a private opaque structure. What do you think ? On Mon, Nov 7, 2011 at 4:42 PM, Boris Faure bill...@gmail.com wrote: On Mon, Nov 7, 2011 at 22:37, Youness Alaoui kakar...@kakaroto.homelinux.net wrote: Could you explain what you mean by versioning or give me a link to something that explains it ? padding is useful so you can change your structure (and add new APIs) without breaking the ABI and forcing every app to recompile (changed sizeof). You should only need a spare (void *). -- Boris Faure -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] [E-Devel][Review][Patch] Evas GL Fastpath
Hi Carsten, That's really weird. I've tested elementary_test before I submitted the patch. I'm wondering if there were changes that I made that would require elementary recompile... i can't think of one at the moment. Just curious, are you using evas with NEWGL enabled? If that's the case, it explains the breakage. My understanding was that NEWGL was broken and it wasn't turned on by default so I didn't bother with it for now. I'll try to track down the issue. cheers, Sung On Sun, Nov 6, 2011 at 2:48 PM, Carsten Haitzler ras...@rasterman.comwrote: On Wed, 26 Oct 2011 14:08:47 +0900 Sung W. Park sung...@gmail.com said: Hi all, I'm attaching a patch for the initial version of the GL Fastpath addition to evas gl backend. Working on different mobile devices, we've noticed that the cost of context switch (MakeCurrent) in GL can be very expensive depending on the driver implementation. To minimize the poorly written driver's context switch overhead, I've implemented a state tracking layer on top of the driver implemented GL. Essentially, this layer wraps all the GL/Glue(GLX/EGL) APIs and manages its own state changes. Internally, only one real GL context is created and logical contexts are created every time a user requests context creation. The logical contexts keep track of its states and sets only the necessary states (the ones that are different than the current ones) when there is a MakeCurrent request. The real MakeCurrent gets called when there is a Surface/Window change request. The GL library is dlopened and all the APIs are dlsym'ed and wrapped accordingly. All the GL functions are in evas_gl_core.{h,c}. Here's a very simply flow of the code. - all the APIs are exported as function pointers (*glsym_glBegin), (*glsm_eglCreatContext), and etc. - all the native GL/Glue(GLX/EGL) APIs are dlsym'ed as _sym_glBegin, _sym_eglCreateContext, and etc. - all the fastpath APIs are implmemnted as fpgl_glBegin, fpgl_eglCreateContext, and etc. - if faspath is seletected, the exported APIs are set accordingly ie. glsym_glBegin = fpgl_glBegin; - default mode is the regular gl symbols are directly set. ie. glsym_glBegin = _sym_glBegin; I have an Environment variable where you can set it to three different Modes EVAS_GL_FASTPATH = 0// Default mode. Regular GL symbols are directly loaded EVAS_GL_FASTPATH = 1// Fastpath mode. Takes the path described above. EVAS_GL_FASTPATH = 2// Wrapped mode. All the regular GL functions are wrapped once. This can be used for various purposes Since all the GL symbols are now loaded in this library, I took out all the gl symbol loading parts in the evas gl backend as you'll see in the patch. The changes to the engine and the backend itself is pretty minor. There are still some known issues to hammer out but I thought we're at a good place for an initial version so that my source doesn't diverge too much. Known Issues and To Do's * Current GL Fastpath version doesn't support multiple threads. Instead of having one global real context, I would need to do it for each thread. I'll get on this soon. this is.. unfortunately... important :( not currently, but in future it will be. * Issues running Evas GL on certain conditions. When running the elementary test (with gl engine), if you run ELMGLview test that runs in ON_DEMAND mode, everything works fine. BUT, when you run the ELMGLView test in ALWAYS mode, the subsequent elm tests shows blank screen. When you destroy the GLView window, everything else comes on fine. smells of a context tracking bug to me. * Resource protection code. This actually applies to Evas GL code in general as well. Since all the resources are shared among all the contexts that get created, I would like to eventually have a resource protecting mechanism that prevents access to resources outside of its context unless specifically specified. how do you know which context a resource belongs to? eg a texture. afre you going to forbid 2 ctx's to set the same texture id as src texture for ops? sounds silly. I'm attaching three files - evas_gl_core.h, evas_gl_core.c, fastpath.patch To get the code running... - copy evas_gl_core.{c,h} to src/modules/engine/gl_common/ - apply the fastpath.patch - compile/install evas - to run with fastpath GL (ie. % EVAS_GL_FASTPATH=1 ./evasgl_sample1) Let me know if you have questions or comments. big problem. it breaks the gl engine as-is: 2:46PM ~ ELM_ENGINE=gl elementary_test Initializing OpenGL APIs... API OPT: 0 Default API path enabled... ERR16397:evas-gl_x11 evas_x_main.c:802 eng_best_visual_get() glsym_glXChooseFBConfig returned no configs ERR16397:evas-gl_x11 evas_x_main.c:802 eng_best_visual_get() glsym_glXChooseFBConfig returned no configs
Re: [E-devel] E SVN: cedric trunk/e_dbus/src/lib/hal
On Sun, 6 Nov 2011 02:21:57 -0800 Enlightenment SVN no-re...@enlightenment.org wrote: Log: e_dbus: e_hal use some e_ukit function so we should init it. Author: cedric Date: 2011-11-06 02:21:57 -0800 (Sun, 06 Nov 2011) New Revision: 64809 Trac: http://trac.enlightenment.org/e/changeset/64809 Modified: trunk/e_dbus/src/lib/hal/Makefile.am trunk/e_dbus/src/lib/hal/e_hal_main.c no. just...no. -- Mike Blumenkrantz Zentific: Doctor recommended, mother approved. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] [E-Devel][Review][Patch] Evas GL Fastpath
On Tue, 8 Nov 2011 11:06:14 +0900 Sung W. Park sung...@gmail.com said: Hi Carsten, That's really weird. I've tested elementary_test before I submitted the patch. I'm wondering if there were changes that I made that would require elementary recompile... i can't think of one at the moment. Just curious, are you using evas with NEWGL enabled? If that's the case, it explains the breakage. My understanding was that NEWGL was broken and it wasn't turned on by default so I didn't bother with it for now. nup. NEWGL off. :( yes it's broken - even though it SHOULD work... theres some odd things around there but it's off here. :) and this was just running elementary_test - didnt even just evas_gl... so basic stuff didnt work :( I'll try to track down the issue. cheers, Sung On Sun, Nov 6, 2011 at 2:48 PM, Carsten Haitzler ras...@rasterman.comwrote: On Wed, 26 Oct 2011 14:08:47 +0900 Sung W. Park sung...@gmail.com said: Hi all, I'm attaching a patch for the initial version of the GL Fastpath addition to evas gl backend. Working on different mobile devices, we've noticed that the cost of context switch (MakeCurrent) in GL can be very expensive depending on the driver implementation. To minimize the poorly written driver's context switch overhead, I've implemented a state tracking layer on top of the driver implemented GL. Essentially, this layer wraps all the GL/Glue(GLX/EGL) APIs and manages its own state changes. Internally, only one real GL context is created and logical contexts are created every time a user requests context creation. The logical contexts keep track of its states and sets only the necessary states (the ones that are different than the current ones) when there is a MakeCurrent request. The real MakeCurrent gets called when there is a Surface/Window change request. The GL library is dlopened and all the APIs are dlsym'ed and wrapped accordingly. All the GL functions are in evas_gl_core.{h,c}. Here's a very simply flow of the code. - all the APIs are exported as function pointers (*glsym_glBegin), (*glsm_eglCreatContext), and etc. - all the native GL/Glue(GLX/EGL) APIs are dlsym'ed as _sym_glBegin, _sym_eglCreateContext, and etc. - all the fastpath APIs are implmemnted as fpgl_glBegin, fpgl_eglCreateContext, and etc. - if faspath is seletected, the exported APIs are set accordingly ie. glsym_glBegin = fpgl_glBegin; - default mode is the regular gl symbols are directly set. ie. glsym_glBegin = _sym_glBegin; I have an Environment variable where you can set it to three different Modes EVAS_GL_FASTPATH = 0// Default mode. Regular GL symbols are directly loaded EVAS_GL_FASTPATH = 1// Fastpath mode. Takes the path described above. EVAS_GL_FASTPATH = 2// Wrapped mode. All the regular GL functions are wrapped once. This can be used for various purposes Since all the GL symbols are now loaded in this library, I took out all the gl symbol loading parts in the evas gl backend as you'll see in the patch. The changes to the engine and the backend itself is pretty minor. There are still some known issues to hammer out but I thought we're at a good place for an initial version so that my source doesn't diverge too much. Known Issues and To Do's * Current GL Fastpath version doesn't support multiple threads. Instead of having one global real context, I would need to do it for each thread. I'll get on this soon. this is.. unfortunately... important :( not currently, but in future it will be. * Issues running Evas GL on certain conditions. When running the elementary test (with gl engine), if you run ELMGLview test that runs in ON_DEMAND mode, everything works fine. BUT, when you run the ELMGLView test in ALWAYS mode, the subsequent elm tests shows blank screen. When you destroy the GLView window, everything else comes on fine. smells of a context tracking bug to me. * Resource protection code. This actually applies to Evas GL code in general as well. Since all the resources are shared among all the contexts that get created, I would like to eventually have a resource protecting mechanism that prevents access to resources outside of its context unless specifically specified. how do you know which context a resource belongs to? eg a texture. afre you going to forbid 2 ctx's to set the same texture id as src texture for ops? sounds silly. I'm attaching three files - evas_gl_core.h, evas_gl_core.c, fastpath.patch To get the code running... - copy evas_gl_core.{c,h} to src/modules/engine/gl_common/ - apply the fastpath.patch - compile/install evas - to run with fastpath GL (ie. % EVAS_GL_FASTPATH=1 ./evasgl_sample1) Let me
Re: [E-devel] E SVN: raster IN trunk/elementary: . src/bin src/lib
On Mon, 7 Nov 2011 13:28:45 -0200 Iván Briano (Sachiel) sachi...@gmail.com said: aaah crap. not again... :/ 2011/11/6 Enlightenment SVN no-re...@enlightenment.org: Log: From: Bluezery ohpo...@gmail.com Subject: [E-devel] [elm_map] ecore_file_download_full() should be used properly elm_map only checked that returned job is NULL. But ecore_file_download_full() returns EINA_FALSE when error occurred. So return value should be checked for proper usage. Please review this simple bug fix Author: raster Date: 2011-11-05 23:11:57 -0700 (Sat, 05 Nov 2011) New Revision: 64794 Trac: http://trac.enlightenment.org/e/changeset/64794 Modified: trunk/elementary/AUTHORS trunk/elementary/src/bin/test_map.c trunk/elementary/src/lib/elm_genlist.c trunk/elementary/src/lib/elm_map.c Modified: trunk/elementary/AUTHORS === --- trunk/elementary/AUTHORS 2011-11-06 04:44:13 UTC (rev 64793) +++ trunk/elementary/AUTHORS 2011-11-06 06:11:57 UTC (rev 64794) @@ -49,3 +49,4 @@ Bluezery ohpo...@gmail.com Nicolas Aguirre aguirre.nico...@gmail.com Sanjeev BA iamsanj...@gmail.com +Bluezery ohpo...@gmail.com Modified: trunk/elementary/src/bin/test_map.c === --- trunk/elementary/src/bin/test_map.c 2011-11-06 04:44:13 UTC (rev 64793) +++ trunk/elementary/src/bin/test_map.c 2011-11-06 06:11:57 UTC (rev 64794) @@ -711,7 +711,7 @@ void test_map(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__) { - Evas_Object *win, *bg, *map; + Evas_Object *win, *bg, *map, *tab, *r, *en; int idx = 0; win = elm_win_add(NULL, map, ELM_WIN_BASIC); @@ -723,6 +723,19 @@ elm_win_resize_object_add(win, bg); evas_object_show(bg); + tab = elm_table_add(win); + evas_object_size_hint_weight_set(tab, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); + elm_win_resize_object_add(win, tab); + evas_object_show(tab); + + r = evas_object_rectangle_add(evas_object_evas_get(win)); + evas_object_color_set(r, 20, 40, 60, 255); + evas_object_size_hint_min_set(r, 200, 200); + evas_object_size_hint_weight_set(r, EVAS_HINT_EXPAND, 0); + evas_object_size_hint_fill_set(r, EVAS_HINT_FILL, EVAS_HINT_FILL); + elm_table_pack(tab, r, 0, 0, 1, 1); + evas_object_show(r); + map = elm_map_add(win); if (map) { @@ -736,7 +749,9 @@ printf(]\n); evas_object_size_hint_weight_set(map, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - elm_win_resize_object_add(win, map); + evas_object_size_hint_fill_set(map, EVAS_HINT_FILL, EVAS_HINT_FILL); + elm_table_pack(tab, map, 0, 2, 1, 1); +// elm_win_resize_object_add(win, map); evas_object_data_set(map, window, win); // @@ -827,6 +842,14 @@ evas_object_show(map); } + en = elm_entry_add(win); + elm_entry_scrollable_set(en, EINA_TRUE); + elm_entry_single_line_set(en, 1); + evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, 0.0); + evas_object_size_hint_align_set(en, EVAS_HINT_FILL, 0.1); + elm_table_pack(tab, en, 0, 1, 1, 1); + evas_object_show(en); + evas_object_resize(win, 800, 800); evas_object_show(win); Modified: trunk/elementary/src/lib/elm_genlist.c === --- trunk/elementary/src/lib/elm_genlist.c 2011-11-06 04:44:13 UTC (rev 64793) +++ trunk/elementary/src/lib/elm_genlist.c 2011-11-06 06:11:57 UTC (rev 64794) @@ -3263,7 +3263,12 @@ it = wd-queue-data; wd-queue = eina_list_remove_list(wd-queue, wd-queue); it-item-queued = EINA_FALSE; - _item_block_add(wd, it); + if (!wd-blocks) + { + _item_block_add(wd, it); + _item_block_realize(it-item-block); + } + else _item_block_add(wd, it); t = ecore_time_get(); if (it-item-block-changed) { What's this doing here and why do I have the feeling you had rejected something similar before? Modified: trunk/elementary/src/lib/elm_map.c === --- trunk/elementary/src/lib/elm_map.c 2011-11-06 04:44:13 UTC (rev 64793) +++ trunk/elementary/src/lib/elm_map.c 2011-11-06 06:11:57 UTC (rev 64794) @@ -1284,9 +1284,9 @@ if (gi-wd-download_num = MAX_CONCURRENT_DOWNLOAD) break; - ecore_file_download_full(gi-source, gi-file, _tile_downloaded, NULL, gi, (gi-job), wd-ua); - if (!gi-job) - DBG(Can't start to download %s to %s, gi-source, gi-file); + Eina_Bool ret = ecore_file_download_full(gi-source, gi-file, _tile_downloaded, NULL, gi, (gi-job), wd-ua); + if (!ret ||
Re: [E-devel] sound api plan
On Tue, 8 Nov 2011 00:13:18 +1000 David Seikel onef...@gmail.com said: On Mon, 7 Nov 2011 23:55:24 +1000 David Seikel onef...@gmail.com wrote: On Mon, 7 Nov 2011 22:48:04 +1000 David Seikel onef...@gmail.com wrote: On Mon, 7 Nov 2011 21:36:43 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Mon, 7 Nov 2011 11:00:24 +0100 Raoul Hecky raoul.he...@gmail.com said: Le lundi 7 novembre 2011 04:33:10, Carsten Haitzler a écrit : attached. this was a sample edc that would be able to play audio, not just single samples but whole sequences across multiple tracks as well as control specific channels and tracks. it didn't specify looping params yet or other additional stuff. Such a huge thing just to play sound in edje... Is it really necessary to have all this in edje or are you just nostalgic of the good old days of trackers?? DAMNED STRAIGHT I AM! :) i just discovered milkytracker! i'm enjoying myself thoroughly! :) seriously though... you CAN still just play samples.. then play samples WITH volume envelopes and looping (sounds as this glues sample+envelopes) and then play entire sequences (a series of samples played with timing), which is the basics for most musical scoring, then combine these into multiple track patterns and put them together into whole songs if u want. it drops down to the simple and up to the whole compose a whole score end of things. if all you ever choose to do is play samples - then its largely irrelevant. reality is that if you want to have complex sound effects you need to start doing all of these little bits. :) let me give an example. scrolling. you want to play some wind blowing when you first start to drag - this may consist of 2 or 3 channels of sound with various wind samples overlayed at staggered intervals to give the impression of something that isn't always looping and repeating (it's a neat trick you also can do with overlayed images). you want this song to fade in then keep looping a few patterns where you really are using 5 or so 5 second samples to create several minutes of wind sound. now when you actually MOVE your mouse (or finger) you year some tinkling sounds that sound like the small glass bells being shaken. these play and fade out becoming quieter the slower your drag and varying pitch depending on how high or low your position is on the scroll range. you would implement these with another few tacks like the wind, applying modifiers for pitch and volume of the play instructions. the bell sample can be 2 or 3 samples like the wind to give the impression of many distinct bells, just played at differing speeds for pitches (you can normally go up 1 octave before it sounds just odd and want to get a new sampling). I'm excited by that. B-) However, with multisense turned on (Ubuntu 10.04, sndfile 1.0.21), when it gets to compiling elementary's edje files I get - /opt/e17/bin/edje_cc -id ../../data/themes -fd ../../data/themes \ --../../data/themes/default.edc \ --../../data/themes/default.edj /opt/e17/bin/edje_cc -id ../../data/themes -fd ../../data/themes \ --../../data/themes/default-desktop.edc \ --../../data/themes/default-desktop.edj ALSA player_plugin init fail Couldn't open any output device. ALSA player_plugin init fail Couldn't open any output device. make[3]: Leaving directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/themes' Making all in images make[3]: Entering directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/images' make[3]: Nothing to be done for `all'. make[3]: Leaving directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/images' Making all in objects make[3]: Entering directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/objects' /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/test.edc \ --../../data/objects/test.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/multip.edc \ --../../data/objects/multip.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/colorpreview.edc \ --../../data/objects/colorpreview.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/cursors.edc \ --../../data/objects/cursors.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/font_preview.edc \ --../../data/objects/font_preview.edj ALSA player_plugin init fail Couldn't open any output device. /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/postit_ent.edc \
Re: [E-devel] E SVN: discomfitor trunk/e/src/bin
On Mon, Nov 7, 2011 at 9:54 PM, Christopher Michael cpmicha...@comcast.net wrote: On 11/07/11 18:53, Enlightenment SVN wrote: Log: I don't spend hours and hours and hours and days of my free time hacking on ecrustify for people to not use it. Author: discomfitor Date: 2011-11-07 15:53:01 -0800 (Mon, 07 Nov 2011) New Revision: 64917 Trac: http://trac.enlightenment.org/e/changeset/64917 Modified: trunk/e/src/bin/e_randr.c Modified: trunk/e/src/bin/e_randr.c === Then the only solution is to stop wasting your hours hours :P come on, the coding style is already not the prettiest things in the world. But sticking to it will at least being consistent throught out EFL. And discomfitor is doing a great work with ecrustify. Lucas De Marchi -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] sound api plan
On Tue, 8 Nov 2011 12:15:44 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Tue, 8 Nov 2011 00:13:18 +1000 David Seikel onef...@gmail.com said: On Mon, 7 Nov 2011 23:55:24 +1000 David Seikel onef...@gmail.com wrote: On Mon, 7 Nov 2011 22:48:04 +1000 David Seikel onef...@gmail.com wrote: On Mon, 7 Nov 2011 21:36:43 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Mon, 7 Nov 2011 11:00:24 +0100 Raoul Hecky raoul.he...@gmail.com said: Le lundi 7 novembre 2011 04:33:10, Carsten Haitzler a écrit : attached. this was a sample edc that would be able to play audio, not just single samples but whole sequences across multiple tracks as well as control specific channels and tracks. it didn't specify looping params yet or other additional stuff. Such a huge thing just to play sound in edje... Is it really necessary to have all this in edje or are you just nostalgic of the good old days of trackers?? DAMNED STRAIGHT I AM! :) i just discovered milkytracker! i'm enjoying myself thoroughly! :) seriously though... you CAN still just play samples.. then play samples WITH volume envelopes and looping (sounds as this glues sample+envelopes) and then play entire sequences (a series of samples played with timing), which is the basics for most musical scoring, then combine these into multiple track patterns and put them together into whole songs if u want. it drops down to the simple and up to the whole compose a whole score end of things. if all you ever choose to do is play samples - then its largely irrelevant. reality is that if you want to have complex sound effects you need to start doing all of these little bits. :) let me give an example. scrolling. you want to play some wind blowing when you first start to drag - this may consist of 2 or 3 channels of sound with various wind samples overlayed at staggered intervals to give the impression of something that isn't always looping and repeating (it's a neat trick you also can do with overlayed images). you want this song to fade in then keep looping a few patterns where you really are using 5 or so 5 second samples to create several minutes of wind sound. now when you actually MOVE your mouse (or finger) you year some tinkling sounds that sound like the small glass bells being shaken. these play and fade out becoming quieter the slower your drag and varying pitch depending on how high or low your position is on the scroll range. you would implement these with another few tacks like the wind, applying modifiers for pitch and volume of the play instructions. the bell sample can be 2 or 3 samples like the wind to give the impression of many distinct bells, just played at differing speeds for pitches (you can normally go up 1 octave before it sounds just odd and want to get a new sampling). I'm excited by that. B-) However, with multisense turned on (Ubuntu 10.04, sndfile 1.0.21), when it gets to compiling elementary's edje files I get - /opt/e17/bin/edje_cc -id ../../data/themes -fd ../../data/themes \ --../../data/themes/default.edc \ --../../data/themes/default.edj /opt/e17/bin/edje_cc -id ../../data/themes -fd ../../data/themes \ --../../data/themes/default-desktop.edc \ --../../data/themes/default-desktop.edj ALSA player_plugin init fail Couldn't open any output device. ALSA player_plugin init fail Couldn't open any output device. make[3]: Leaving directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/themes' Making all in images make[3]: Entering directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/images' make[3]: Nothing to be done for `all'. make[3]: Leaving directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/images' Making all in objects make[3]: Entering directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/objects' /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/test.edc \ --../../data/objects/test.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/multip.edc \ --../../data/objects/multip.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/colorpreview.edc \ --../../data/objects/colorpreview.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/cursors.edc \ --../../data/objects/cursors.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/font_preview.edc \
Re: [E-devel] sound api plan
Hmm, second time through, elementary built fine. Might not be edje_cc doing the segfaulting. actually... where do u have remix installed vs edje? i think edje may be installing the remix plugins in the wrong spot for remix. Well, this seems to be the trouble. The remix plugin dir finish by being install in $prefix/lib/remix, even on x86_64. This should be $prefix/lib64/remix Something on the edje configure.ac should be fix to not choose the hardcoded path. I already had to patch libremix for this issue because it installed the 64-bits libs in $prefix/lib64 but not the 64-bits plugin libs (in $prefix/lib/remix) I do not have compat 32-bits libs installed, but in this case, it would become quite a mess. IMHO, both configure.ac (for edje and remix) should be fixed to respect $libdir and install the 64-bits libs in the right place. -- Jérôme Pinot http://ngc891.blogdns.net/ signature.asc Description: Digital signature -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] sound api plan
On Tue, 8 Nov 2011 13:36:25 +0900 Jérôme Pinot ngc...@gmail.com wrote: Hmm, second time through, elementary built fine. Might not be edje_cc doing the segfaulting. actually... where do u have remix installed vs edje? i think edje may be installing the remix plugins in the wrong spot for remix. Well, this seems to be the trouble. The remix plugin dir finish by being install in $prefix/lib/remix, even on x86_64. This should be $prefix/lib64/remix Something on the edje configure.ac should be fix to not choose the hardcoded path. I already had to patch libremix for this issue because it installed the 64-bits libs in $prefix/lib64 but not the 64-bits plugin libs (in $prefix/lib/remix) I do not have compat 32-bits libs installed, but in this case, it would become quite a mess. IMHO, both configure.ac (for edje and remix) should be fixed to respect $libdir and install the 64-bits libs in the right place. I take it you are on CentOS or similar? -- Mike Blumenkrantz Zentific: Doctor recommended, mother approved. -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] sound api plan
On Tue, 8 Nov 2011, Jérôme Pinot wrote: Hmm, second time through, elementary built fine. Might not be edje_cc doing the segfaulting. actually... where do u have remix installed vs edje? i think edje may be installing the remix plugins in the wrong spot for remix. Well, this seems to be the trouble. The remix plugin dir finish by being install in $prefix/lib/remix, even on x86_64. This should be $prefix/lib64/remix Something on the edje configure.ac should be fix to not choose the hardcoded path. I already had to patch libremix for this issue because it installed the 64-bits libs in $prefix/lib64 but not the 64-bits plugin libs (in $prefix/lib/remix) I do not have compat 32-bits libs installed, but in this case, it would become quite a mess. IMHO, both configure.ac (for edje and remix) should be fixed to respect $libdir and install the 64-bits libs in the right place. that's because raster keeps setting libdir in configure.ac while, like every variables that are based on $prefix, they are not set at configure time, but at make time. I have a patch that fix that, in addition to cleaning a bit the autotools, but I have to check it a bit more (it changes the names of what AC_DEFINE defines). And I have a cold. So if you can wait 2 or 3 days... Vincent-- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] sound api plan
On 11/08/11 05:54, Vincent Torri wrote: On Tue, 8 Nov 2011, Jérôme Pinot wrote: Hmm, second time through, elementary built fine. Might not be edje_cc doing the segfaulting. actually... where do u have remix installed vs edje? i think edje may be installing the remix plugins in the wrong spot for remix. Well, this seems to be the trouble. The remix plugin dir finish by being install in $prefix/lib/remix, even on x86_64. This should be $prefix/lib64/remix Something on the edje configure.ac should be fix to not choose the hardcoded path. I already had to patch libremix for this issue because it installed the 64-bits libs in $prefix/lib64 but not the 64-bits plugin libs (in $prefix/lib/remix) I do not have compat 32-bits libs installed, but in this case, it would become quite a mess. IMHO, both configure.ac (for edje and remix) should be fixed to respect $libdir and install the 64-bits libs in the right place. that's because raster keeps setting libdir in configure.ac while, like every variables that are based on $prefix, they are not set at configure time, but at make time. I have a patch that fix that, in addition to cleaning a bit the autotools, but I have to check it a bit more (it changes the names of what AC_DEFINE defines). And I have a cold. So if you can wait 2 or 3 days... Vincent Not sure I understand. The problem is only for the plugin dir, other libraries went in the right place. I fixed the problem temporarily by issuing: if [ `uname -m` = x86_64 ]; then sed -e 's@lib/remix@lib64/remix@g' -i configure.ac fi -- Jérôme Pinot http://ngc891.blogdns.net/ signature.asc Description: Digital signature -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] sound api plan
On Tue, 8 Nov 2011, Jérôme Pinot wrote: On 11/08/11 05:54, Vincent Torri wrote: On Tue, 8 Nov 2011, Jérôme Pinot wrote: Hmm, second time through, elementary built fine. Might not be edje_cc doing the segfaulting. actually... where do u have remix installed vs edje? i think edje may be installing the remix plugins in the wrong spot for remix. Well, this seems to be the trouble. The remix plugin dir finish by being install in $prefix/lib/remix, even on x86_64. This should be $prefix/lib64/remix Something on the edje configure.ac should be fix to not choose the hardcoded path. I already had to patch libremix for this issue because it installed the 64-bits libs in $prefix/lib64 but not the 64-bits plugin libs (in $prefix/lib/remix) I do not have compat 32-bits libs installed, but in this case, it would become quite a mess. IMHO, both configure.ac (for edje and remix) should be fixed to respect $libdir and install the 64-bits libs in the right place. that's because raster keeps setting libdir in configure.ac while, like every variables that are based on $prefix, they are not set at configure time, but at make time. I have a patch that fix that, in addition to cleaning a bit the autotools, but I have to check it a bit more (it changes the names of what AC_DEFINE defines). And I have a cold. So if you can wait 2 or 3 days... Vincent Not sure I understand. The problem is only for the plugin dir, http://trac.enlightenment.org/e/browser/trunk/edje/configure.ac#L343 Vincent other libraries went in the right place. I fixed the problem temporarily by issuing: if [ `uname -m` = x86_64 ]; then sed -e 's@lib/remix@lib64/remix@g' -i configure.ac fi -- Jérôme Pinot http://ngc891.blogdns.net/ -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] sound api plan
On Mon, 7 Nov 2011, Carsten Haitzler (The Rasterman) wrote: attached. this was a sample edc that would be able to play audio, not just single samples but whole sequences across multiple tracks as well as control specific channels and tracks. it didn't specify looping params yet or other additional stuff. i've never heard about that sound plan before the commit. The patch was not public and we could not have discussed about it before the commit. So I really don't like the way it came into edje. Vincent -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] sound api plan
On Tue, 8 Nov 2011 13:36:25 +0900 Jérôme Pinot ngc...@gmail.com said: Hmm, second time through, elementary built fine. Might not be edje_cc doing the segfaulting. actually... where do u have remix installed vs edje? i think edje may be installing the remix plugins in the wrong spot for remix. Well, this seems to be the trouble. The remix plugin dir finish by being install in $prefix/lib/remix, even on x86_64. This should be $prefix/lib64/remix Something on the edje configure.ac should be fix to not choose the hardcoded path. I already had to patch libremix for this issue because it installed the 64-bits libs in $prefix/lib64 but not the 64-bits plugin libs (in $prefix/lib/remix) I do not have compat 32-bits libs installed, but in this case, it would become quite a mess. IMHO, both configure.ac (for edje and remix) should be fixed to respect $libdir and install the 64-bits libs in the right place. send your patches back to remix dev. i already told him that it needs to export plugin dir as a var so u can properly find it without guessing. -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] sound api plan
On Tue, 8 Nov 2011 13:49:57 +1000 David Seikel onef...@gmail.com said: On Tue, 8 Nov 2011 12:15:44 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Tue, 8 Nov 2011 00:13:18 +1000 David Seikel onef...@gmail.com said: On Mon, 7 Nov 2011 23:55:24 +1000 David Seikel onef...@gmail.com wrote: On Mon, 7 Nov 2011 22:48:04 +1000 David Seikel onef...@gmail.com wrote: On Mon, 7 Nov 2011 21:36:43 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Mon, 7 Nov 2011 11:00:24 +0100 Raoul Hecky raoul.he...@gmail.com said: Le lundi 7 novembre 2011 04:33:10, Carsten Haitzler a écrit : attached. this was a sample edc that would be able to play audio, not just single samples but whole sequences across multiple tracks as well as control specific channels and tracks. it didn't specify looping params yet or other additional stuff. Such a huge thing just to play sound in edje... Is it really necessary to have all this in edje or are you just nostalgic of the good old days of trackers?? DAMNED STRAIGHT I AM! :) i just discovered milkytracker! i'm enjoying myself thoroughly! :) seriously though... you CAN still just play samples.. then play samples WITH volume envelopes and looping (sounds as this glues sample+envelopes) and then play entire sequences (a series of samples played with timing), which is the basics for most musical scoring, then combine these into multiple track patterns and put them together into whole songs if u want. it drops down to the simple and up to the whole compose a whole score end of things. if all you ever choose to do is play samples - then its largely irrelevant. reality is that if you want to have complex sound effects you need to start doing all of these little bits. :) let me give an example. scrolling. you want to play some wind blowing when you first start to drag - this may consist of 2 or 3 channels of sound with various wind samples overlayed at staggered intervals to give the impression of something that isn't always looping and repeating (it's a neat trick you also can do with overlayed images). you want this song to fade in then keep looping a few patterns where you really are using 5 or so 5 second samples to create several minutes of wind sound. now when you actually MOVE your mouse (or finger) you year some tinkling sounds that sound like the small glass bells being shaken. these play and fade out becoming quieter the slower your drag and varying pitch depending on how high or low your position is on the scroll range. you would implement these with another few tacks like the wind, applying modifiers for pitch and volume of the play instructions. the bell sample can be 2 or 3 samples like the wind to give the impression of many distinct bells, just played at differing speeds for pitches (you can normally go up 1 octave before it sounds just odd and want to get a new sampling). I'm excited by that. B-) However, with multisense turned on (Ubuntu 10.04, sndfile 1.0.21), when it gets to compiling elementary's edje files I get - /opt/e17/bin/edje_cc -id ../../data/themes -fd ../../data/themes \ --../../data/themes/default.edc \ --../../data/themes/default.edj /opt/e17/bin/edje_cc -id ../../data/themes -fd ../../data/themes \ --../../data/themes/default-desktop.edc \ --../../data/themes/default-desktop.edj ALSA player_plugin init fail Couldn't open any output device. ALSA player_plugin init fail Couldn't open any output device. make[3]: Leaving directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/themes' Making all in images make[3]: Entering directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/images' make[3]: Nothing to be done for `all'. make[3]: Leaving directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/images' Making all in objects make[3]: Entering directory `/home/dvs1/e17_svn/SVN/trunk/elementary/data/objects' /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/test.edc \ --../../data/objects/test.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/multip.edc \ --../../data/objects/multip.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/colorpreview.edc \ --../../data/objects/colorpreview.edj /opt/e17/bin/edje_cc -id ../../data/objects -fd ../../data/objects \ --../../data/objects/cursors.edc \
Re: [E-devel] E SVN: discomfitor trunk/e/src/bin
On Tue, Nov 8, 2011 at 00:53, Enlightenment SVN no-re...@enlightenment.org wrote: Log: I don't spend hours and hours and hours and days of my free time hacking on ecrustify for people to not use it. […] -#define Ecore_X_Randr_None 0 +#define Ecore_X_Randr_None 0 #define Ecore_X_Randr_Unset -1 ecrustify doesn't seem to pad correctly when defined value start with '-'. -- Boris Faure -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] sound api plan
On Tue, 8 Nov 2011 07:11:28 +0100 (CET) Vincent Torri vto...@univ-evry.fr said: On Tue, 8 Nov 2011, Jérôme Pinot wrote: On 11/08/11 05:54, Vincent Torri wrote: On Tue, 8 Nov 2011, Jérôme Pinot wrote: Hmm, second time through, elementary built fine. Might not be edje_cc doing the segfaulting. actually... where do u have remix installed vs edje? i think edje may be installing the remix plugins in the wrong spot for remix. Well, this seems to be the trouble. The remix plugin dir finish by being install in $prefix/lib/remix, even on x86_64. This should be $prefix/lib64/remix Something on the edje configure.ac should be fix to not choose the hardcoded path. I already had to patch libremix for this issue because it installed the 64-bits libs in $prefix/lib64 but not the 64-bits plugin libs (in $prefix/lib/remix) I do not have compat 32-bits libs installed, but in this case, it would become quite a mess. IMHO, both configure.ac (for edje and remix) should be fixed to respect $libdir and install the 64-bits libs in the right place. that's because raster keeps setting libdir in configure.ac while, like every variables that are based on $prefix, they are not set at configure time, but at make time. I have a patch that fix that, in addition to cleaning a bit the autotools, but I have to check it a bit more (it changes the names of what AC_DEFINE defines). And I have a cold. So if you can wait 2 or 3 days... Vincent Not sure I understand. The problem is only for the plugin dir, http://trac.enlightenment.org/e/browser/trunk/edje/configure.ac#L343 plugin has to go into remix's plugin dir to work. thats the only sane place to collect that info. thats what i changed it to. the code that WAS there used libdir and came from the original patch. i didn't add it there as such. it was wrong either way. -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] sound api plan
On Tue, 8 Nov 2011 14:12:32 +0900 Jérôme Pinot ngc...@gmail.com said: On 11/08/11 05:54, Vincent Torri wrote: On Tue, 8 Nov 2011, Jérôme Pinot wrote: Hmm, second time through, elementary built fine. Might not be edje_cc doing the segfaulting. actually... where do u have remix installed vs edje? i think edje may be installing the remix plugins in the wrong spot for remix. Well, this seems to be the trouble. The remix plugin dir finish by being install in $prefix/lib/remix, even on x86_64. This should be $prefix/lib64/remix Something on the edje configure.ac should be fix to not choose the hardcoded path. I already had to patch libremix for this issue because it installed the 64-bits libs in $prefix/lib64 but not the 64-bits plugin libs (in $prefix/lib/remix) I do not have compat 32-bits libs installed, but in this case, it would become quite a mess. IMHO, both configure.ac (for edje and remix) should be fixed to respect $libdir and install the 64-bits libs in the right place. that's because raster keeps setting libdir in configure.ac while, like every variables that are based on $prefix, they are not set at configure time, but at make time. I have a patch that fix that, in addition to cleaning a bit the autotools, but I have to check it a bit more (it changes the names of what AC_DEFINE defines). And I have a cold. So if you can wait 2 or 3 days... Vincent Not sure I understand. The problem is only for the plugin dir, other libraries went in the right place. yeah - it just chose edje's libdir as base, not remix's - i just fixed that. I fixed the problem temporarily by issuing: if [ `uname -m` = x86_64 ]; then sed -e 's@lib/remix@lib64/remix@g' -i configure.ac fi ok - smells of wrong real fix to me. hack. :) -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] sound api plan
On Tue, 8 Nov 2011 07:23:27 +0100 (CET) Vincent Torri vto...@univ-evry.fr said: On Mon, 7 Nov 2011, Carsten Haitzler (The Rasterman) wrote: attached. this was a sample edc that would be able to play audio, not just single samples but whole sequences across multiple tracks as well as control specific channels and tracks. it didn't specify looping params yet or other additional stuff. i've never heard about that sound plan before the commit. The patch was not public and we could not have discussed about it before the commit. So I really don't like the way it came into edje. i'm not sure this is much different from anything else that goes on in efl. i have done work for a decade+ without discussing patches on the mailing list first. so have most developers. as such this patch this time was going through me. the comments on the patch so far havent actually commented on the edc api it adds at all which everyone is up in arms about for release. so since everyone complaining isn't actually talking about that... i'll write it here in short form. it adds: sounds { sample { name: NAME ENCODING; source: SAMPLE_FILE; } ... tone: NAME FREQ; ... } and 2 more actions: PLAY_SAMPLE NAME SPEED; PLAY_TONE NAME DURATION; that's it. unfortunately to make this WORK u need a chunk of infra like being able to load and encode samples into edj files, decode them, play and mix them, resample them, etc. all of which is opaque to the api. -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel