forked from old/legacy-imlib2
SVN revision: 325 |
||
---|---|---|
libltdl | ||
test_images | ||
COPYING | ||
Makefile | ||
Makefile.am | ||
README | ||
api.c | ||
api.h | ||
autogen.sh | ||
blend.c | ||
blend.h | ||
color.c | ||
color.h | ||
colormod.c | ||
colormod.h | ||
common.h | ||
configure.in | ||
context.c | ||
context.h | ||
draw.c | ||
draw.h | ||
file.c | ||
file.h | ||
grab.c | ||
grab.h | ||
image.c | ||
image.h | ||
loader_jpeg.c | ||
loader_png.c | ||
main.c | ||
rend.c | ||
rend.h | ||
rgba.c | ||
rgba.h | ||
rgbadraw.c | ||
rgbadraw.h | ||
scale.c | ||
scale.h | ||
updates.c | ||
updates.h | ||
ximage.c | ||
ximage.h |
README
Imlib 2.0 pre pre pre pre alpha toy code... the wuick way: ./configure mkdir ~/.loaders mkdir ~/.loaders/image make install (ignore the make failed error - thats fine) ./imlib2 you'll get a window up with a big bg and little igns in an array - they follow your mouse around.. notice.... alpha-blended shadow on top & leftof window notice soft shadows under icons notice the speed :) notice that imlib si actually re-loadng ALL of these images continuously from disk (just alook at the code) (well ok not the bg one) - the image caching works and is taken full advantage of .. its also delayed loading - it'll only decode the data to images you need :) WARNING! this isn't even a library yet - it's a single program thats modularised to become a librayr once it's all debugged. what you DO have here is: color allocation & adjustment code - if in 8bbp or less it will cose the larges colorcube it can that fits in your available colormap space - right now the code uses the default colormap, but if you look at color.c carefully you'll see the code will not be hard to change (have prefercnes as to size of colorcube etc.) does alpha blending onto any X drawable with any colormap. does ``high quality'' rendering with dithering available for all modes up to 16bpp (1bpp, 8bpp, 15bpp, 16bpp). probably has nasty endianess problems. has VERY VERY VERY fast rendering code. has anti-aliased scaling up and down code. has a modularised loader system (works right now - but still possible changes might have to be made) simple to get this going: mkdir ~/.loaders mkdir ~/.loaders/image cp png.so ~/.loaders/image cp jepg.so ~/.loaders/image you just installed the png loader - it's theonly one i've written and it isnt very good (comments in code - load.c) but it works. you also installed the jpage loader :) the laoder system automagically updates yhe loaders were you to dump new files there or overwrite the old ones to any program RUNTIME will pick up the new code.. :) you dont even have to restart the program.. OOH what joy :) the image caching is all there and the pixmap caching backend is there too. there is nothign to generate pixmaps yet - that has yet to come (it will use the rendering code in rend.c). things that still need to be worked on: * colormodifiers (to do gamma etc. correction - need to develop a new system wherby i can uniquely tag pixmaps with a colormodifier ID for caching properly). * border scaling - you know - like E does now for buttons etc. * saving functions * image manipulation funcitons (flip, rotate, scale etc of original data) * a new name for imlib2.0 - 2.0 just sounds boring :) * more loader / saver modules for ppm, pgm, pgm, xpm, tiff etc... * RGBA drawing area - basically a RGBA buffer with RGBA buffer ops written (copyarea, poasteimage, fillrect, drawline, drawtext etc. so you can have a little virtual RGBA framebuffer - also will include rectangle os ineterst updating mechanism (so anly the parts of the RGBA buffer that were drawn to are drawn and updated to the scren). * more flim!