Commit Graph

42 Commits

Author SHA1 Message Date
rephorm c475e48ead put this in HEAD too
SVN revision: 6099
2002-04-01 04:59:39 +00:00
Carsten Haitzler 85ecd1a6fc forgot to ever do this.. mayaswell reload changed image objects off disk...
SVN revision: 5707
2001-11-17 02:44:23 +00:00
Carsten Haitzler 0791b79e3e hrrm. a tad more efficient :)
SVN revision: 5387
2001-09-28 03:59:50 +00:00
Carsten Haitzler 4790ba40f1 ewwwww.. i forgot to free the font string....
and forgot to cleanup clip lists on objects when the evas gets deleteded and
all objectsin it get nuked!

woop! fix fix fix :)


SVN revision: 5185
2001-08-17 00:05:12 +00:00
Carsten Haitzler 55bba3ab5e optimize! software enigne image objects will keep a pre-scaled copy IF:
1. they are rendered completely unclipped by clip obejcts or edges of the
canvas for more than 16 iterations at the same size with no border scaling
2. it will throw thme out if things chnage
3. it will share image objects only of original size :)


SVN revision: 5139
2001-08-13 09:15:04 +00:00
Carsten Haitzler bf4d95b694 now that was just silly.. evas shoudl have used the visual and colormap u
provided regardless of its own suggestions


SVN revision: 4987
2001-07-26 03:31:03 +00:00
Carsten Haitzler ec26f53719 oops leak.. fix fix fix :)
SVN revision: 4670
2001-04-23 06:22:30 +00:00
Carsten Haitzler 9413312693 and that woudl fix a segv problem.. wheee..
SVN revision: 4667
2001-04-21 18:55:56 +00:00
Carsten Haitzler 9e10e3e023 let me just turn off scaled caching for a bit.. i need to think this over a
bit more after some more strenuous testing... i think i need to keep some
usage metrics on things.. tho i guess i shold just use a bigger cache... :)


SVN revision: 4411
2001-03-20 03:11:01 +00:00
Carsten Haitzler 494a92dd55 ooooooooooooops... fixed :)
SVN revision: 4405
2001-03-18 23:52:19 +00:00
Carsten Haitzler 83beae92c5 oops missing that.. fix
SVN revision: 4404
2001-03-18 23:23:07 +00:00
Carsten Haitzler 183d80c31c cache image scalings... :)
SVN revision: 4403
2001-03-18 23:21:35 +00:00
Carsten Haitzler 38c00cc88b errr - beat me dead with a large possum - but somehow these 2 files got
swapped (in their contents) - thank god it still worked & compiled - but
well... that wasn't very good now was it? :)


SVN revision: 4104
2001-01-07 21:04:32 +00:00
Carsten Haitzler a084ff527e This finishes up the complete rewrite of evas's backend engines to be cleaner,
meaner, faster and more complete - as well as handling clipping too.

Over christmas I added clipping to evas (objects can be clipped by rectangle
objects - the clipped objects are also colours by the clipping object)

I rewrote the GL engine to be a LOT faster - evas_test shows a good 300-400%
speedup. I fixed polygone tessalation in the gl engine (i just wish the gl
book would tell me it uses the data in-place instead of making a tmp copy of
it!)

I made all engines match up pixel-for-pixel with fonts, and the gl engine's
texture mech maping works just fine.

The X11 engine is now fully functional - it does all objects - text included
but it makes serious sacrifices in image quality to get speed (no dithering,
no anti-aliased scaling, no alpha blending etc.).

Some optmizations in the X11 engine too

overall a much more complete implikemntation of evas and its renderers - you
shoudl see massiv eimprovements in GL rendeirng and be able to actualyl use
the X11 rendering without a problem :)


SVN revision: 4052
2000-12-29 20:43:48 +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 3a11bc158a added save file flag for old evas test and fixe dimage buffer rendering to work
again


SVN revision: 3630
2000-10-15 19:54:36 +00:00
Carsten Haitzler 53b3a6face start of polygon drawing support...
SVN revision: 3574
2000-10-12 00:26:34 +00:00
Carsten Haitzler 8923422a2e add code to double check object type before doing anything to objects
SVN revision: 3523
2000-09-18 02:22:04 +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 b155d7063a fix minor problem there.........
SVN revision: 3483
2000-09-15 23:49:25 +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 f0563a7bfa only init once
SVN revision: 3472
2000-09-15 14:40:26 +00:00
Carsten Haitzler 7513d0ab8e dont call visual and colormap inits
SVN revision: 3470
2000-09-15 14:37:47 +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 54af8d51ff routiens for mroe text info.....
SVN revision: 3454
2000-09-13 17:11:53 +00:00
Carsten Haitzler d660812fe8 add font ascent/descent checking
SVN revision: 3442
2000-09-13 15:08:05 +00:00
Carsten Haitzler eb7ec35dbc fix line draw bug - add event pass through flag for objects
SVN revision: 3219
2000-08-22 03:45:58 +00:00
Carsten Haitzler e7d5045576 oops bugs in line backend for imlb - fixed :)
SVN revision: 3116
2000-08-14 06:53:30 +00:00
Carsten Haitzler 28d61bace7 default fotn cache and image cache for imlib subsystem are bigger
SVN revision: 3115
2000-08-14 06:44:07 +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 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 c72ef1301d 2 more text geometry rotuines......... um........ done! :)
SVN revision: 3088
2000-08-10 22:12:42 +00:00
Carsten Haitzler 905635f680 whooooppppppeeeeeeeeeeeeeeeeee!
gl image enign handles disparate src and dest rects fine. it also handles
border scaling for images.... after a lot fo work and fiddling.


SVN revision: 3082
2000-08-10 10:14:55 +00:00
Carsten Haitzler 96ac5710df tsted it.... and it works :)
SVN revision: 3056
2000-08-07 03:13:32 +00:00
Carsten Haitzler a3456bfe2e rectangles and lines done both evas and imlbi2 ends
SVN revision: 3055
2000-08-07 03:11:05 +00:00
Carsten Haitzler 4ccd9a636f woop! font freeing/caching now in.......... woooooo!
SVN revision: 3054
2000-08-07 01:54:22 +00:00
Carsten Haitzler 363ed23d29 imlib backend does text now too.. god that was easy!
SVN revision: 3053
2000-08-07 01:20:30 +00:00
Carsten Haitzler 40b2aef29a aa fonts in evas1 wooop!
SVN revision: 3052
2000-08-07 00:50:40 +00:00
Carsten Haitzler 4700f60fa0 more params......
SVN revision: 3037
2000-08-06 06:01:25 +00:00
Carsten Haitzler 97e973c6e8 imlib 2 backend works now too :).
SVN revision: 3035
2000-08-06 04:53:53 +00:00
Carsten Haitzler c802275f05 framework for imlib2 backend. - ne3ed at least another sample.....
SVN revision: 3033
2000-08-06 02:06:24 +00:00