Commit Graph

38 Commits

Author SHA1 Message Date
Carsten Haitzler 0e6f590af7 oops - again.. over-optimize
SVN revision: 4259
2001-02-20 00:49:16 +00:00
Carsten Haitzler a59517b166 oops- over optimized so that it didnt actually render some changes :) fixed
SVN revision: 4254
2001-02-19 19:38:47 +00:00
Carsten Haitzler d6f9deb7ad damnit... the more i use evas the more i optimize it... ok - more
optimizations for special cases (rectangles that onyl change size or
location have only their detlas redrawn - not the whole rect, and the same
with images who share common global tile start and size parapeters for the
image...) this is getting quite fast now :) rememeber you only really see
the speedups in software.. hardware is so dispicably fast you never notice :(


SVN revision: 4252
2001-02-19 09:27:59 +00:00
Carsten Haitzler f1d5f4f049 more optimizations in render function
SVN revision: 4237
2001-02-17 08:10:30 +00:00
Carsten Haitzler d02e5fd9e4 evas.m4
SVN revision: 4150
2001-01-25 21:56:04 +00:00
Mandrake 72d8d91f3c More updates to make this compile without having Mesa installed.
SVN revision: 4085
2001-01-03 06:04:56 +00:00
Carsten Haitzler ce2f4fe9f1 * rewrote GL engine for evas - vast speed improvements and cleanliness
improvements - MUCH better
* fixed imlib and x11 engines - much faster x11 engine. much better imlib
engine
* added clipping ability to evas (you can clip one object by another for now
only rectangles are supported)
* you will need to use cvs imlib2 - i fixed the clipping in it to apply to
images, text and gradients too.
* almost done with x11 engine - just fonts to go (mostly done)
* clipping rects rgba color modifies what they clip
* gl, imlib and x11 engines modified to do clipping
* still need to add border scaling supporty to gl engine
* maybe some other stuff i don't remember - i've been sick over christmas


SVN revision: 4039
2000-12-27 20:51:39 +00:00
Carsten Haitzler 1175ab0854 and return valid info when theres nothngi to do... :)
SVN revision: 3941
2000-12-02 02:49:51 +00:00
Carsten Haitzler 7badc56fdb add new render call that returns the updates that got rendered :)
SVN revision: 3940
2000-12-02 02:21:07 +00:00
Carsten Haitzler 92e9ebd222 fix "special case" for rectangles - property chnage parameter wasnt being set
in some cases.


SVN revision: 3761
2000-10-28 18:03:39 +00:00
Carsten Haitzler 61f9e4f648 raster: special case optimization for retcangle objects... since they are a
solid color - if you move or resize a rect and it doesnt change color, or
stakcing or visability - it only changes size and/or location, i do an XOR on
the update rectangles (this is a logical geometric XOR) and only update those
rectangles... why do this? see efm with the selection rectangle? it re-renders
the entire rectangle area - even only the edges change while you drag it around
so this special casing in evas would handle that and optimize.


SVN revision: 3690
2000-10-22 19:14:22 +00:00
Carsten Haitzler 8a740e5fa4 stubs for Xfree86 Render extension support. STUBS only now. will get filled in
as soon as i have this puppy installed and working


SVN revision: 3651
2000-10-18 00:48:25 +00:00
Carsten Haitzler 2779c6f133 image renderer works withotu needing display info
SVN revision: 3627
2000-10-15 18:51:38 +00:00
Carsten Haitzler 28920da8b3 region obscuring code. this should provide for apps using evas to indicate
whihc retcangles of the evas are completely obsucred by covering windows
so evas doesn't render things it doesn't need to (ie they can't be seen).


SVN revision: 3619
2000-10-15 03:11:11 +00:00
Carsten Haitzler 53b3a6face start of polygon drawing support...
SVN revision: 3574
2000-10-12 00:26:34 +00:00
Carsten Haitzler c6e5ed3a1d some basic start on documentation....what's happening to me? all this
documentation? :)


SVN revision: 3554
2000-09-27 15:14:06 +00:00
Carsten Haitzler 289117a952 privatise data structs for evas... much cleaner. all structs are now internal
so you cant look into them. all defines now become enums too - cleaner. no
more bypassing the api is possible :)

also added better checks and --with- stuff for imlib2, gl and ttf


SVN revision: 3548
2000-09-26 19:16:48 +00:00
Carsten Haitzler 240dc97f4c x11 engine code added - only partially works
SVN revision: 3503
2000-09-17 06:30:44 +00:00
Carsten Haitzler ff01c864a4 allow color allocation policy to be set in evas
SVN revision: 3473
2000-09-15 15:04:48 +00:00
Carsten Haitzler e2ffcf313c dissalow resizing for line and text objects - doesnt make sense -
change the font or string to resize text, and chnage line coords.

add ability for color settings to apply to image objects too (image colors get
multiplid by color set on image - 255, 255, 255, 255 is "normal" so it's fast
path rendering - all other colors go thru color modifiers in the imlib engines
and gl handles it int he gl engine. if alpha is 0 the object draw is aborted
immediately for fast path.


SVN revision: 3468
2000-09-15 13:49:14 +00:00
Carsten Haitzler a751ec1b21 we have a new rendering target for evas - an imlib image buffer.
it will render to a virtual image buffer just like it would to a window.
the logic works the exact same way as a window - it wil lonly render the rects
that changed. if a rect chnaged it expects that rect to have been cleared and
will blend the canvas ontop of the image - so you can use it to augment the
current image contents (though they will be permenantly modified). This is
specifically designed for doing things like rendering a canvas to be saved
to an image file.

WHEEEEEEEE :)


SVN revision: 3460
2000-09-13 22:36:46 +00:00
Carsten Haitzler 738f9d5fea slight stakcing chnage redraw problem - didnt queue a redraw if stacking
changed (ie raise or lower)


SVN revision: 3288
2000-08-31 23:30:54 +00:00
Carsten Haitzler afe928e120 missing border attribute setting on render.
SVN revision: 3272
2000-08-28 23:40:38 +00:00
Carsten Haitzler 0fb877cf9f add some more query calls.
SVN revision: 3226
2000-08-22 07:02:35 +00:00
Carsten Haitzler e37fccc450 event system works - callbakcs happen.. WOOHOO :)
SVN revision: 3193
2000-08-20 21:49:41 +00:00
Carsten Haitzler 056e350668 api filled out much better now........ infact... i'm almost done :)
SVN revision: 3186
2000-08-20 07:13:31 +00:00
Carsten Haitzler 0a73a07edf gradients added and work
SVN revision: 3114
2000-08-14 06:37:51 +00:00
Carsten Haitzler 842031ebaa lines and rectangles work. woop! :)
SVN revision: 3113
2000-08-14 05:41:56 +00:00
Carsten Haitzler c64671e765 text objects work! dude! like totally! :)
SVN revision: 3112
2000-08-14 03:23:46 +00:00
Carsten Haitzler 331b113f4d evas detects gl and build in gl backend optionally if it finds it. evas will
fall back to stfware imlib2 rendering if an app requests GL rendering..


SVN revision: 3111
2000-08-14 00:14:22 +00:00
Carsten Haitzler bcb7bcea6c dont need bits code.. that will go in another lib - higher level than a canvas
item IMHO


SVN revision: 3110
2000-08-13 22:57:22 +00:00
Carsten Haitzler fc068cdd82 eas now handles fill params for image. tile and offset of image to be filled
within an image object. just a conveneint tile & svcale and offset fill method
for programs.


SVN revision: 3109
2000-08-13 22:45:48 +00:00
Carsten Haitzler 95353b03d2 a bit cleaner now too :)
SVN revision: 3097
2000-08-13 06:10:02 +00:00
Carsten Haitzler a5ba53be87 cleaner use func pointers for rendering backend funcs - too much copy & paste
SVN revision: 3096
2000-08-13 06:06:43 +00:00
Carsten Haitzler cda8d8b1b8 fix trails
SVN revision: 3091
2000-08-11 08:32:03 +00:00
Carsten Haitzler 73de169494 wooooo!
core bits of evas api actually do stuff now.. evas test it beginning to use them
if you want to have ann ide how easy it is to use evas as a rendeirng engine
just look at evas_test.. notice the evas setup is just a few calls (create,
set the output drawable, the output size of the window and the viewport into
the evas's virtual world - the its a mater of creating a few objects
and notice the main loo ONLy does 2 things - move the objects then call
render - evas will optimize to only render the bits that changed all for you.
there's a lot fo thank;less nasty state chekcing code just for this.
i'm going to have to write a lot fo it - image obejcts only done sofar.
you cant do anytign except move and resize them and add them and show and hide
them. freeing them wont work. layers dont work. no api to set performance cache
or to access it. fill modes for images dont work either nor is there an api
to set an images border scaling)


SVN revision: 3090
2000-08-11 07:47:52 +00:00
Carsten Haitzler fd578d9ec9 aaaaaaaaaah errrrrrr .... stuff!
SVN revision: 3068
2000-08-08 01:55:28 +00:00
Carsten Haitzler 7c0f7a6f9a '
split that up.....


SVN revision: 2956
2000-07-31 18:06:21 +00:00