On Thu, 14 Sep 2006 06:55:20 GMT "[EMAIL PROTECTED]" <[EMAIL PROTECTED]>
babbled:

> 
>       Just a note on the evas move-to-premul stuff. Some things
> are taking me a bit more time than I had thought, so it looks like
> I may not finish with it til the weekend.. we'll see.
> 
>       Let me give a quick recap of the api funcs that this change
> will involve.
> 
>       There are four utility functions for converting colors and
> argb data to/fro premul:
> 
>    "evas_color_premul(int a, int *r, int *g, int *b)"
>    "evas_color_unpremul(int a, int *r, int *g, int *b)"
>    "evas_data_argb_premul(unsigned int *data, unsigned int len)"
>    "evas_data_argb_unpremul(unsigned int *data, unsigned int len)"

good - useful routines :)

>       Now, as far as evas objects go, grads were the most affected
> by this premul change, and there are new funcs as a result:
> 
>    "evas_object_gradient_alpha_add(obj, int a, int distance)"
>    "evas_object_gradient_alpha_data_set(obj, void *alpha_data,
>                                         int len)"
> 
> which allow for adding separate alpha stops and setting separate
> alpha data on a grad ('alpha_data' must have unsigned char values).
>       Note that you can have different sets of color and alpha
> stops, and also color and alpha data of different lengths.
> 
> 
>       Since we're 'breaking' stuff and going over things -- I went
> ahead and *removed* the current "evas_object_gradient_data_unset"
> api function.
> 
>       Why..?  Well, its functionality can be obtained by setting
> new data/adata, or by the colors-clear api func (which will clear
> alpha stops as well), or just by adding new color/alpha stops.

nicer - yes.

>       The original reason for having this 'data unset' function
> was to make it clear that you could not add colors to the gradient
> *on-top-of* data that had been set.. but that isn't really a good
> enough reason to have it, and in practice the use of this function
> is cumbersome.

yup- as they both do the same. keep it to 1 :)

>       Also, when I get another chance, there'll be a func for
> setting a 'file/key' on a grad so that one will be able to load grad
> spectra, eg. gimp grads, etc. and then one would be tempted to have
> a 'file-unset' func just for logical similarity... and it's just
> not worth it.

or as per the image obj - just set the file to NULL to unset. :)

>       So unless someone really strongly feels otherwise, I'd say
> let's take this 'gradient-data-unset' function out now.

agreed. :)

>       Ok, besides that, I wanted to fix some of the issues that
> Brian had with grads in edje...
> 
>       For this, I thought the best thing to do is to separate
> the notions of the 'grad-angle' and the 'grad-fill-angle'.
> 
>       So, I've added a new grad fill related api func:
> 
>    "evas_object_gradient_fill_angle_set(obj, Evas_Angle angle)"
> 
> which does what the current "evas_object_gradient_angle_set" now
> does, ie. rotate the fill region, and the grad-angle-set func will
> instead do what it used to do - namely it will orient the gradient
> (rel to the fill now) at that angle and make it 'cover' the fill
> region. I've only implemented it for linear grads, but it's actually
> intuitive for 'linear' kinds of geoms.. eg. for sinusoidal and such.

sounds ok to me.

>       It can also be given a reasonable interpretation for most
> any geom, and in fact might be useful for images as it could be
> taken to mean 'rotate the image' before using it in the fill (the
> fill itself has its own rotation.. as will the object as a whole...
> there's much angleness here).

not sure what you mean here (well not precisely).

>       I've also added two new linear grad types: "linear.diag" and
> "linear.codiag", which orient themselves rel to the fill's diagonal
> and co-diagonal (when the grad-angle value is 0).
> 
>       Lastly, I've added an api function to set the grad spectrum
> 'direction':
> 
>    "evas_object_gradient_range_direction_set(obj, int direction)"
> 
> where 'direction' should be 1 or -1. This will reverse the gradient
> spectrum if set to -1.
> 
>       Much ado about gradients, but hopefully all this will make
> it easier to work with grads in current edje and otherwise.
> 
>       Comments...?

sounds good - one thing i did notice - gradient fills are a lot slower than
images... :) i noticed when cross-fading wallpapers @ 1600x1200 with gradient
bg's :)

-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    [EMAIL PROTECTED]
裸好多
Tokyo, Japan (東京 日本)

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to